From bebda07718d358917e28dab09fc3050d3e88506f Mon Sep 17 00:00:00 2001 From: David Rosca Date: Tue, 27 Aug 2024 11:42:38 +0200 Subject: [PATCH] radeonsi/vcn: Stop using base.level for H264 level_idc Instead use the value from sequence parameters. Reviewed-by: Ruijing Dong Part-of: --- src/gallium/drivers/radeonsi/radeon_vcn_enc.c | 1 + src/gallium/drivers/radeonsi/radeon_vcn_enc_1_2.c | 2 -- src/gallium/drivers/radeonsi/radeon_vcn_enc_3_0.c | 2 -- src/gallium/drivers/radeonsi/radeon_vcn_enc_5_0.c | 2 -- 4 files changed, 1 insertion(+), 6 deletions(-) diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_enc.c b/src/gallium/drivers/radeonsi/radeon_vcn_enc.c index c8a9a446092..6cd9186524c 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_enc.c +++ b/src/gallium/drivers/radeonsi/radeon_vcn_enc.c @@ -272,6 +272,7 @@ static void radeon_vcn_enc_h264_get_spec_misc_param(struct radeon_encoder *enc, enc->enc_pic.spec_misc.transform_8x8_mode = sscreen->info.vcn_ip_version >= VCN_5_0_0 && pic->pic_ctrl.transform_8x8_mode_flag; + enc->enc_pic.spec_misc.level_idc = pic->seq.level_idc; } static void radeon_vcn_enc_h264_get_rc_param(struct radeon_encoder *enc, diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_enc_1_2.c b/src/gallium/drivers/radeonsi/radeon_vcn_enc_1_2.c index 448982fac27..8e2d36ff74f 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_enc_1_2.c +++ b/src/gallium/drivers/radeonsi/radeon_vcn_enc_1_2.c @@ -141,8 +141,6 @@ static void radeon_enc_slice_control_hevc(struct radeon_encoder *enc) static void radeon_enc_spec_misc(struct radeon_encoder *enc) { - enc->enc_pic.spec_misc.level_idc = enc->base.level; - RADEON_ENC_BEGIN(enc->cmd.spec_misc_h264); RADEON_ENC_CS(enc->enc_pic.spec_misc.constrained_intra_pred_flag); RADEON_ENC_CS(enc->enc_pic.spec_misc.cabac_enable); diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_enc_3_0.c b/src/gallium/drivers/radeonsi/radeon_vcn_enc_3_0.c index 5d3e228b843..2983b622049 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_enc_3_0.c +++ b/src/gallium/drivers/radeonsi/radeon_vcn_enc_3_0.c @@ -30,8 +30,6 @@ static void radeon_enc_session_info(struct radeon_encoder *enc) static void radeon_enc_spec_misc(struct radeon_encoder *enc) { - enc->enc_pic.spec_misc.level_idc = enc->base.level; - RADEON_ENC_BEGIN(enc->cmd.spec_misc_h264); RADEON_ENC_CS(enc->enc_pic.spec_misc.constrained_intra_pred_flag); RADEON_ENC_CS(enc->enc_pic.spec_misc.cabac_enable); 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 eb11d8f3561..e96ec61afa6 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_enc_5_0.c +++ b/src/gallium/drivers/radeonsi/radeon_vcn_enc_5_0.c @@ -58,8 +58,6 @@ static void radeon_enc_cdf_default_table(struct radeon_encoder *enc) static void radeon_enc_spec_misc(struct radeon_encoder *enc) { - enc->enc_pic.spec_misc.level_idc = enc->base.level; - RADEON_ENC_BEGIN(enc->cmd.spec_misc_h264); RADEON_ENC_CS(enc->enc_pic.spec_misc.constrained_intra_pred_flag); RADEON_ENC_CS(enc->enc_pic.spec_misc.cabac_enable);