On 08/26/2011 05:43 PM, John Stebbins wrote:
Hi,
On 08/26/2011 05:48 AM, Vladimir Pantelic wrote:
int ticks = st->st->codec->ticks_per_frame + (ist->st->parser ?
ist->st->parser->repeat_pict : 0);
Well, after all that, I did some more code reading and spelunking of mailing
list archives and discovered
the reason that the code is the way it is. The decoders define repeat_pict ==
0 to mean one frame time because
a decoder always returns frames. The parser defines repeat_pict == 0 to mean
one field time because
the parser can return after parsing only a field. So when the parser sees a
frame, it must add 1
to repeat pict so that the caller can distinguish field from frame. I think
this is rather obtuse, but
it is what it is. Is anybody in favor of adding a field to
AVCodecParserContext to explicitly flag field
vs. frame? This option was discussed and rejected in the original mailing list
discussion.
This was all discussed in the context of this thread back in feb 2009.
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/84007/focus=84344
then maybe at least add some comment lines, otherwise somebody else
will "discover" that again in 2013...
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel