[FFmpeg-devel] [PATCH] libavcodec/h263dec.c: Duplicate the last decoded frame when xvid marks the packet as skipped.

Thierry Foucu tfoucu at gmail.com
Thu Oct 26 02:21:28 EEST 2017


On Wed, Oct 25, 2017 at 2:43 PM, Carl Eugen Hoyos <ceffmpeg at gmail.com>
wrote:

> 2017-10-25 20:38 GMT+02:00 Thierry Foucu <tfoucu at gmail.com>:
>
> > Without the patch, the decoder will return only 29 frames
>
> Isn't that the correct and expected output?
>

Not sure what you mean by correct.
There are only 29 VOP encoded, and over 1900 N_VOP packets.
If you just demux the sample file, you will get 1947 packets

I used the Xvid decoder from
http://svn.xvid.org/trunk/xvidcore/examples/xvid_decraw.c

to decode the same file, and their decoder outputted 1947 frames.


>
> If you need cfr, you can request it.
>

true, but this works as long as you have 2 frames and you can cfr between
them. But what if you have the last X second of the file with only N_VOP
frames
In this case, the decoder will not output frames and the transcoded file
will be shorter by X second


> Once the frames are duplicated, you can't undo the file
> size multiplication.
>
> Carl Eugen
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>


More information about the ffmpeg-devel mailing list