[FFmpeg-cvslog] avcodec/libdavs2: use frame rate code table

Zhao Zhili git at videolan.org
Fri Jun 24 10:43:46 EEST 2022


ffmpeg | branch: master | Zhao Zhili <quinkblack at foxmail.com> | Mon Jun 13 11:36:36 2022 +0800| [a5931f58f767da1adbc1ba79ae068a76dc5d8145] | committer: Zhao Zhili

avcodec/libdavs2: use frame rate code table

It's more natural than the floating to fraction conversion.

Signed-off-by: Zhao Zhili <zhilizhao at tencent.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a5931f58f767da1adbc1ba79ae068a76dc5d8145
---

 libavcodec/libdavs2.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libavcodec/libdavs2.c b/libavcodec/libdavs2.c
index bc31745a4f..d7625718a2 100644
--- a/libavcodec/libdavs2.c
+++ b/libavcodec/libdavs2.c
@@ -25,6 +25,7 @@
 #include "libavutil/cpu.h"
 #include "avcodec.h"
 #include "codec_internal.h"
+#include "avs2.h"
 #include "davs2.h"
 
 typedef struct DAVS2Context {
@@ -85,7 +86,8 @@ static int davs2_dump_frames(AVCodecContext *avctx, davs2_picture_t *pic, int *g
          */
         avctx->has_b_frames = FFMAX(avctx->has_b_frames, !headerset->low_delay);
 
-        avctx->framerate = av_d2q(headerset->frame_rate,4096);
+        if (headerset->frame_rate_id < 16)
+            avctx->framerate = ff_avs2_frame_rate_tab[headerset->frame_rate_id];
         *got_frame = 0;
         return 0;
     }



More information about the ffmpeg-cvslog mailing list