[SCM] libav/experimental: movenc: write avg_frame_rate as the framerate, not the codec timebase

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Aug 10 16:03:19 UTC 2014


The following commit has been merged in the experimental branch:
commit cf6977712c9e5abe6dc55289f6322ccbf10321a9
Author: Anton Khirnov <anton at khirnov.net>
Date:   Sun May 18 13:49:46 2014 +0200

    movenc: write avg_frame_rate as the framerate, not the codec timebase

diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index cf0158b..dcd3294 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -483,7 +483,13 @@ static int mov_write_dvc1_structs(MOVTrack *track, uint8_t *buf)
     put_bits(&pbc, 1, !slices); /* no slice code */
     put_bits(&pbc, 1, 0); /* no bframe */
     put_bits(&pbc, 1, 0); /* reserved */
-    put_bits32(&pbc, track->enc->time_base.den); /* framerate */
+
+    /* framerate */
+    if (track->st->avg_frame_rate.num > 0 && track->st->avg_frame_rate.den > 0)
+        put_bits32(&pbc, track->st->avg_frame_rate.num / track->st->avg_frame_rate.den);
+    else
+        put_bits32(&pbc, 0xffffffff);
+
     flush_put_bits(&pbc);
 
     av_free(unescaped);

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list