[FFmpeg-cvslog] avformat/movenc: rescale when copying duration to timecode track

Bryce McLeod git at videolan.org
Wed Mar 12 13:19:24 CET 2014


ffmpeg | branch: master | Bryce McLeod <bryce.mcleod at codory.com> | Wed Mar 12 12:52:27 2014 +0100| [581957cd8618f07d824da1b9f6ae1c97531b03ab] | committer: Michael Niedermayer

avformat/movenc: rescale when copying duration to timecode track

Fixes Ticket3453

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=581957cd8618f07d824da1b9f6ae1c97531b03ab
---

 libavformat/movenc.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index e21c32a..e906369 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -2502,7 +2502,10 @@ static int mov_write_moov_tag(AVIOContext *pb, MOVMuxContext *mov,
             int src_trk = mov->tracks[i].src_track;
             mov->tracks[src_trk].tref_tag = mov->tracks[i].tag;
             mov->tracks[src_trk].tref_id  = mov->tracks[i].track_id;
-            mov->tracks[i].track_duration = mov->tracks[src_trk].track_duration;
+            //src_trk may have a different timescale than the tmcd track
+            mov->tracks[i].track_duration = av_rescale(mov->tracks[src_trk].track_duration,
+                                                       mov->tracks[i].timescale,
+                                                       mov->tracks[src_trk].timescale);
         }
     }
 



More information about the ffmpeg-cvslog mailing list