diff options
author | Kostya Shishkov <kostya.shishkov@gmail.com> | 2020-12-13 14:10:06 +0100 |
---|---|---|
committer | Kostya Shishkov <kostya.shishkov@gmail.com> | 2020-12-13 14:10:06 +0100 |
commit | 15395de63e3c784e0e4d21de655efa991643e33d (patch) | |
tree | 99d2d298db73919ed410416ee2dee4d1ad1151cb | |
parent | 079fff1d531162a4a5f90a28ad9a37929bcd97a1 (diff) | |
download | nihav-15395de63e3c784e0e4d21de655efa991643e33d.tar.gz |
mov: fix track duration rescaling
-rw-r--r-- | nihav-commonfmt/src/demuxers/mov.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/nihav-commonfmt/src/demuxers/mov.rs b/nihav-commonfmt/src/demuxers/mov.rs index 4d36c05..ac124fa 100644 --- a/nihav-commonfmt/src/demuxers/mov.rs +++ b/nihav-commonfmt/src/demuxers/mov.rs @@ -701,11 +701,12 @@ fn read_stts(track: &mut Track, br: &mut ByteReader, size: u64) -> DemuxerResult if let Some(ref mut stream) = track.stream { let tb_den = stream.tb_den; let (tb_num, tb_den) = reduce_timebase(tb_num * stream.tb_num, tb_den); - stream.duration /= u64::from(stream.tb_den / tb_den); + stream.duration /= u64::from(track.tb_div); stream.tb_num = tb_num; stream.tb_den = tb_den; track.tb_num = tb_num; track.tb_den = tb_den; + track.duration /= track.tb_div; } } else { track.time_to_sample.truncate(0); |