[FFmpeg-devel] [PATCH] Implement guessed_pts in avcodec_decode_video2.
Mon Jan 31 19:22:54 CET 2011
On Mon, Jan 31, 2011 at 12:37:20PM +0000, M?ns Rullg?rd wrote:
> Jean-Daniel Dupas <devlists at shadowlab.org> writes:
> > Le 30 janv. 2011 ? 20:39, M?ns Rullg?rd a ?crit :
> >> Nicolas George <nicolas.george at normalesup.org> writes:
> >>> Signed-off-by: Nicolas George <nicolas.george at normalesup.org>
> >>> ---
> >>> cmdutils.c | 27 ---------------------------
> >>> cmdutils.h | 24 ------------------------
> >>> ffmpeg.c | 14 ++++++--------
> >>> ffplay.c | 10 +++-------
> >>> libavcodec/avcodec.h | 20 ++++++++++++++++++++
> >>> libavcodec/utils.c | 43 ++++++++++++++++++++++++++++++++++++++++++-
> >>> 6 files changed, 71 insertions(+), 67 deletions(-)
> >>> This patch moves the guess_correct_pts function from cmdutils to libavcodec.
> >>> The feature is available through a new field in AVFrame, guessed_pts.
> >>> make test and ffplay still work, but I would like to have some more time to
> >>> read it carefully, but I have things to do in the next few days, and this
> >>> feature was discussed in another thread, so here the current version. It
> >>> will conflict with some patches that will certainly soon be applied, so I
> >>> will update and submit it again anyway.
> >> What is all this guessing supposed to achieve anyway? It makes me
> >> feel uneasy
> > Try to play H.264 with reordered frame in avi container without this
> > guess, and you will see why it is necessary.
> AVI does not have timestamps (only an implied DTS), so the PTS would
> be calculated by counting decoded frames and multiplying by the frame
AVI has 0-size frames that are used to (very inefficiently) handle
variable frame rate, your method certain will mess up timing completely
for that case.
More information about the ffmpeg-devel