From 581957cd8618f07d824da1b9f6ae1c97531b03ab Mon Sep 17 00:00:00 2001 From: Bryce McLeod Date: Wed, 12 Mar 2014 12:52:27 +0100 Subject: [PATCH] avformat/movenc: rescale when copying duration to timecode track Fixes Ticket3453 Signed-off-by: Michael Niedermayer --- libavformat/movenc.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavformat/movenc.c b/libavformat/movenc.c index e21c32a30b..e90636972d 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); } }