avformat: Export ticks_per_frame in st->codec
authorMichael Niedermayer <michael@niedermayer.cc>
Tue, 6 Sep 2016 16:10:41 +0000 (18:10 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Wed, 7 Sep 2016 09:11:56 +0000 (11:11 +0200)
Fixes regressions with stream copy and output timebase/fps being twice as fine as needed
Makes the timebase and ticks per frame handled identical which should make the
code easier to understand and work with. It does not solve the problem without
st->codec access

Suggested-by: Hendrik Leppkes
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavformat/utils.c
tests/ref/fate/copy-trac4914
tests/ref/fate/copy-trac4914-avi

index 7d23c4a..76cbff4 100644 (file)
@@ -3825,8 +3825,10 @@ FF_DISABLE_DEPRECATION_WARNINGS
             st->codec->height = st->internal->avctx->height;
         }
 
-        if (st->codec->codec_tag != MKTAG('t','m','c','d'))
+        if (st->codec->codec_tag != MKTAG('t','m','c','d')) {
             st->codec->time_base = st->internal->avctx->time_base;
+            st->codec->ticks_per_frame = st->internal->avctx->ticks_per_frame;
+        }
         st->codec->framerate = st->avg_frame_rate;
 
         if (st->internal->avctx->subtitle_header) {
index 9301c86..c977f30 100644 (file)
@@ -1,2 +1,2 @@
-84316a64b609052d9974891686fbf607 *tests/data/fate/copy-trac4914.mxf
-566329 tests/data/fate/copy-trac4914.mxf
+8868ae16d99ed03916e9dc7105285471 *tests/data/fate/copy-trac4914.mxf
+560697 tests/data/fate/copy-trac4914.mxf
index e23affc..0ee6675 100644 (file)
@@ -1,2 +1,2 @@
-e948f10c90f526ae2c0cf234e1f54128 *tests/data/fate/copy-trac4914-avi.avi
-480886 tests/data/fate/copy-trac4914-avi.avi
+26e4202638bc384b82d2b5eb4d33a5f0 *tests/data/fate/copy-trac4914-avi.avi
+479494 tests/data/fate/copy-trac4914-avi.avi