diff --git a/libaegisub/common/vfr.cpp b/libaegisub/common/vfr.cpp index c82fcdbeedf659e29026ace3d644a7a1cbc96989..49ba8fe0edbb615f2c2b8c01945c1d976f21161d 100644 --- a/libaegisub/common/vfr.cpp +++ b/libaegisub/common/vfr.cpp @@ -153,7 +153,6 @@ Framerate::Framerate(int64_t numerator, int64_t denominator, bool drop) void Framerate::SetFromTimecodes() { validate_timecodes(timecodes); - normalize_timecodes(timecodes); denominator = default_denominator; numerator = (timecodes.size() - 1) * denominator * 1000 / timecodes.back(); last = (timecodes.size() - 1) * denominator * 1000; diff --git a/src/MatroskaParser.c b/src/MatroskaParser.c index b3af0ad86f7a0e8985473b402e6241ef3512e129..c1f8a27d140876ee60158a134a709d67c0981cad 100644 --- a/src/MatroskaParser.c +++ b/src/MatroskaParser.c @@ -2193,7 +2193,7 @@ found: // recalculate this block's timecode to final timecode in ns timecode = mul3(mf->Tracks[tracknum]->TimecodeScale, - (timecode - mf->firstTimecode + block_timecode) * mf->Seg.TimecodeScale); + (timecode + block_timecode) * mf->Seg.TimecodeScale); c = readch(mf); if (c==EOF)