[FFmpeg-devel] [PATCH 4/4] lavc/mpv_enc: rationalize dct_quantize init

Rémi Denis-Courmont remi at remlab.net
Sun Jun 9 11:25:15 EEST 2024


On entry the function pointer is always NULL. We just need to set the
pointer before probing x86 CPU optimisations.

Note that there is a third code path setting this function pointer, but
it does so *after* calling this function: the DNxHD encoder.
---
 libavcodec/mpegvideo_enc.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index af04db70d8..49eed6301b 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -371,14 +371,13 @@ static void mpv_encode_defaults(MpegEncContext *s)
 
 av_cold int ff_dct_encode_init(MpegEncContext *s)
 {
+    s->dct_quantize = dct_quantize_c;
 #if ARCH_X86
     ff_dct_encode_init_x86(s);
 #endif
 
     if (CONFIG_H263_ENCODER)
         ff_h263dsp_init(&s->h263dsp);
-    if (!s->dct_quantize)
-        s->dct_quantize = dct_quantize_c;
     if (!s->denoise_dct)
         s->denoise_dct  = denoise_dct_c;
     s->fast_dct_quantize = s->dct_quantize;
-- 
2.45.1



More information about the ffmpeg-devel mailing list