[SCM] libav/experimental: Do not fill the pts reordering buffer with guessed dts. These values should not matter at all in principle because they do not correspond to the time of display of any frame but it seems ffmpeg becomes confused by them if they are far off and its not strictly correct to set them to guessed values. Fixes video_stalls_at_start.wmv

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:27:31 UTC 2013


The following commit has been merged in the experimental branch:
commit 3c9769a008e1a7e5a33307139b3c19b642cea141
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Thu Aug 14 03:24:58 2008 +0000

    Do not fill the pts reordering buffer with guessed dts.
    These values should not matter at all in principle because they
    do not correspond to the time of display of any frame but it seems
    ffmpeg becomes confused by them if they are far off and its not
    strictly correct to set them to guessed values.
    Fixes video_stalls_at_start.wmv
    
    Originally committed as revision 14746 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavformat/utils.c b/libavformat/utils.c
index 613de23..51cad25 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -898,8 +898,6 @@ static void compute_pkt_fields(AVFormatContext *s, AVStream *st,
 
     if(pkt->pts != AV_NOPTS_VALUE && delay <= MAX_REORDER_DELAY){
         st->pts_buffer[0]= pkt->pts;
-        for(i=1; i<delay+1 && st->pts_buffer[i] == AV_NOPTS_VALUE; i++)
-            st->pts_buffer[i]= (i-delay-1) * pkt->duration;
         for(i=0; i<delay && st->pts_buffer[i] > st->pts_buffer[i+1]; i++)
             FFSWAP(int64_t, st->pts_buffer[i], st->pts_buffer[i+1]);
         if(pkt->dts == AV_NOPTS_VALUE)

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list