[SCM] libav/experimental: Move is->frame_timer init from start to flush_pkt handling so it is also done on seeking. This fixes the bug where after reaching the end and waiting a few seconds seeking back to the begin messes up AV sync and playback speed.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:59:22 UTC 2013


The following commit has been merged in the experimental branch:
commit b25453bdfc0c8e4d28507d160ff8fe85e6415460
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Wed Feb 3 21:33:31 2010 +0000

    Move is->frame_timer init from start to flush_pkt handling so it is also
    done on seeking. This fixes the bug where after reaching the end and waiting
    a few seconds seeking back to the begin messes up AV sync and playback speed.
    
    Originally committed as revision 21629 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/ffplay.c b/ffplay.c
index 7aa742d..bf4f733 100644
--- a/ffplay.c
+++ b/ffplay.c
@@ -1369,6 +1369,7 @@ static int video_thread(void *arg)
             is->last_pts_for_fault_detection= INT64_MIN;
             is->frame_last_pts= AV_NOPTS_VALUE;
             is->frame_last_delay = 0;
+            is->frame_timer = (double)av_gettime() / 1000000.0;
 
             continue;
         }
@@ -1820,7 +1821,6 @@ static int stream_component_open(VideoState *is, int stream_index)
         is->video_stream = stream_index;
         is->video_st = ic->streams[stream_index];
 
-        is->frame_timer = (double)av_gettime() / 1000000.0;
 //        is->video_current_pts_time = av_gettime();
 
         packet_queue_init(&is->videoq);

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list