[SCM] libav/experimental: Fix pts->dts conversion init for non-zero initial value for pts.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:03:25 UTC 2013


The following commit has been merged in the experimental branch:
commit 663322c1b86053c56d6c25e002f4d3374d2ea085
Author: Daniel Kristjansson <danielk at mrl.nyu.edu>
Date:   Sun Mar 7 23:10:18 2010 +0000

    Fix pts->dts conversion init for non-zero initial value for pts.
    
    Patch by Daniel Kristjansson, danielk cuymedia net
    
    Originally committed as revision 22297 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavformat/utils.c b/libavformat/utils.c
index f9d497c..d431d42 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -2695,7 +2695,7 @@ static int compute_pkt_fields2(AVFormatContext *s, AVStream *st, AVPacket *pkt){
     if(pkt->pts != AV_NOPTS_VALUE && pkt->dts == 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;
+            st->pts_buffer[i]= pkt->pts + (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]);
 

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list