[FFmpeg-devel] [PATCH] Only using st->parser->pos when doing repacking in the parser.
Reimar Döffinger
Reimar.Doeffinger at gmx.de
Sun May 8 07:12:36 CEST 2011
On 8 May 2011, at 00:27, Michael Niedermayer <michaelni at gmx.at> wrote:
> On Sat, May 07, 2011 at 09:27:00PM +0200, Reimar Döffinger wrote:
>>
>> Oh, of course, didn't realize I never explained that properly.
>> See the mail I just sent: "[PATCH] Add generic index support to ea demuxer."
>
> the ea case is fixed by my suggestion of
> index 4a4141e..c60d27f 100644
> --- a/libavformat/utils.c
> +++ b/libavformat/utils.c
> @@ -1103,7 +1103,7 @@ static int av_read_frame_internal(AVFormatContext *s, AVPacket *pkt)
>
> if((s->iformat->flags & AVFMT_GENERIC_INDEX) && pkt->flags & AV_PKT_FLAG_KEY){
> ff_reduce_index(s, st->index);
> - av_add_index_entry(st, st->parser->frame_offset, pkt->dts,
> + av_add_index_entry(st, pkt->pos, pkt->dts,
> 0, 0, AVINDEX_KEYFRAME);
> }
What about make fate for this? Doesn't this for MPEG-ES result in placing the index entries at the wrong place?
Or did you mean to select between these two at run-time?
What condition would you use? Checking for COMPLETE_FRAME will break things for parsers which do not support it correctly, which I think is most.
That is why this approach, please don't take it as offence, feels like hacking around to try to avoid fixing parser output to have some sensible values.
>
More information about the ffmpeg-devel
mailing list