From 5524faa22c8bac715c8e5c4d2e30de144bfd35de Mon Sep 17 00:00:00 2001 From: Ruijing Dong Date: Thu, 9 Nov 2023 11:51:49 -0500 Subject: [PATCH] radeonsi/vcn: change intra-ref name 1. change structure name from intra-ref to intra-refresh 2. add need_sequence_header variable 3. add intra-refresh cap enum Reviewed-by: Leo Liu Reviewed-by: Boyuan Zhang Signed-off-by: Ruijing Dong Part-of: --- src/gallium/drivers/radeonsi/radeon_vcn_enc.h | 3 ++- src/gallium/drivers/radeonsi/radeon_vcn_enc_1_2.c | 12 ++++++------ src/gallium/include/pipe/p_video_enums.h | 1 + 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_enc.h b/src/gallium/drivers/radeonsi/radeon_vcn_enc.h index 99aab4ff2cd..d23243853bf 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_enc.h +++ b/src/gallium/drivers/radeonsi/radeon_vcn_enc.h @@ -102,6 +102,7 @@ struct radeon_enc_pic { bool is_ltr; unsigned ltr_idx; bool is_idr; + bool need_sequence_header; bool is_even_frame; bool sample_adaptive_offset_enabled_flag; bool pcm_enabled_flag; @@ -166,7 +167,7 @@ struct radeon_enc_pic { rvcn_enc_encode_context_buffer_t ctx_buf; rvcn_enc_video_bitstream_buffer_t bit_buf; rvcn_enc_feedback_buffer_t fb_buf; - rvcn_enc_intra_refresh_t intra_ref; + rvcn_enc_intra_refresh_t intra_refresh; rvcn_enc_encode_params_t enc_params; rvcn_enc_stats_t enc_statistics; rvcn_enc_input_format_t enc_input_format; 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 aef49593e86..1b2ced9d57a 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_enc_1_2.c +++ b/src/gallium/drivers/radeonsi/radeon_vcn_enc_1_2.c @@ -1176,14 +1176,14 @@ static void radeon_enc_feedback(struct radeon_encoder *enc) static void radeon_enc_intra_refresh(struct radeon_encoder *enc) { - enc->enc_pic.intra_ref.intra_refresh_mode = RENCODE_INTRA_REFRESH_MODE_NONE; - enc->enc_pic.intra_ref.offset = 0; - enc->enc_pic.intra_ref.region_size = 0; + enc->enc_pic.intra_refresh.intra_refresh_mode = RENCODE_INTRA_REFRESH_MODE_NONE; + enc->enc_pic.intra_refresh.offset = 0; + enc->enc_pic.intra_refresh.region_size = 0; RADEON_ENC_BEGIN(enc->cmd.intra_refresh); - RADEON_ENC_CS(enc->enc_pic.intra_ref.intra_refresh_mode); - RADEON_ENC_CS(enc->enc_pic.intra_ref.offset); - RADEON_ENC_CS(enc->enc_pic.intra_ref.region_size); + RADEON_ENC_CS(enc->enc_pic.intra_refresh.intra_refresh_mode); + RADEON_ENC_CS(enc->enc_pic.intra_refresh.offset); + RADEON_ENC_CS(enc->enc_pic.intra_refresh.region_size); RADEON_ENC_END(); } diff --git a/src/gallium/include/pipe/p_video_enums.h b/src/gallium/include/pipe/p_video_enums.h index 86e94e0392f..8629db73dd7 100644 --- a/src/gallium/include/pipe/p_video_enums.h +++ b/src/gallium/include/pipe/p_video_enums.h @@ -141,6 +141,7 @@ enum pipe_video_cap PIPE_VIDEO_CAP_ENC_SUPPORTS_TILE = 40, PIPE_VIDEO_CAP_ENC_MAX_TILE_ROWS = 41, PIPE_VIDEO_CAP_ENC_MAX_TILE_COLS = 42, + PIPE_VIDEO_CAP_ENC_INTRA_REFRESH = 43, }; enum pipe_video_av1_enc_filter_mode