From 0712a5ef9682c6367f224b432b2412af6adfaba4 Mon Sep 17 00:00:00 2001 From: Ruijing Dong Date: Thu, 23 May 2024 16:36:40 -0400 Subject: [PATCH] radeonsi/vcn: apply cdef mode to vcn5 When cdef_bits exist from external, use explicit mode, otherwise, use default cdef mode. Acked-by: Leo Liu Signed-off-by: Ruijing Dong Part-of: --- src/gallium/drivers/radeonsi/radeon_vcn_enc_5_0.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_enc_5_0.c b/src/gallium/drivers/radeonsi/radeon_vcn_enc_5_0.c index 1e092323646..ad06c34d208 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_enc_5_0.c +++ b/src/gallium/drivers/radeonsi/radeon_vcn_enc_5_0.c @@ -5,9 +5,6 @@ * SPDX-License-Identifier: MIT * **************************************************************************/ - -#include - #include "pipe/p_video_codec.h" #include "util/u_video.h" @@ -169,6 +166,13 @@ static void radeon_enc_encode_params_h264(struct radeon_encoder *enc) static void radeon_enc_spec_misc_av1(struct radeon_encoder *enc) { + /* if enabled using the input parameters, it is required to have cdef_bits + * > 0 */ + if (enc->enc_pic.av1_spec_misc.cdef_mode && !!(enc->enc_pic.av1_spec_misc.cdef_bits)) + enc->enc_pic.av1_spec_misc.cdef_mode = RENCODE_AV1_CDEF_MODE_EXPLICIT; + else if (enc->enc_pic.av1_spec_misc.cdef_mode) + enc->enc_pic.av1_spec_misc.cdef_mode = RENCODE_AV1_CDEF_MODE_DEFAULT; + RADEON_ENC_BEGIN(enc->cmd.spec_misc_av1); RADEON_ENC_CS(enc->enc_pic.av1_spec_misc.palette_mode_enable); RADEON_ENC_CS(enc->enc_pic.av1_spec_misc.mv_precision);