diff mbox series

[FFmpeg-devel,08/13] lavc/msmpeg4enc: use AVCodecContext.framerate when available

Message ID 20230507133255.20881-8-anton@khirnov.net
State Accepted
Commit 3fabf712070cb060a01e93d70dbdf837f0efa98e
Headers show
Series [FFmpeg-devel,01/13] lavu/frame: extend AVFrame.repeat_pict documentation | expand

Checks

Context Check Description
andriy/configure_x86 warning Failed to apply patch

Commit Message

Anton Khirnov May 7, 2023, 1:32 p.m. UTC
---
 libavcodec/msmpeg4enc.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/libavcodec/msmpeg4enc.c b/libavcodec/msmpeg4enc.c
index 54121438a0..df190d376c 100644
--- a/libavcodec/msmpeg4enc.c
+++ b/libavcodec/msmpeg4enc.c
@@ -280,7 +280,13 @@  void ff_msmpeg4_encode_picture_header(MpegEncContext * s)
 
 void ff_msmpeg4_encode_ext_header(MpegEncContext * s)
 {
-    unsigned fps = s->avctx->time_base.den / s->avctx->time_base.num / FFMAX(s->avctx->ticks_per_frame, 1);
+    unsigned fps;
+
+    if (s->avctx->framerate.num > 0 && s->avctx->framerate.den > 0)
+        fps = s->avctx->framerate.num / s->avctx->framerate.den;
+    else
+        fps = s->avctx->time_base.den / s->avctx->time_base.num / FFMAX(s->avctx->ticks_per_frame, 1);
+
     put_bits(&s->pb, 5, FFMIN(fps, 31)); //yes 29.97 -> 29
 
     put_bits(&s->pb, 11, FFMIN(s->bit_rate / 1024, 2047));