From 9837dab4bdbb7fd438b443378570b8224f50be38 Mon Sep 17 00:00:00 2001 From: David Rosca Date: Fri, 3 May 2024 16:18:26 +0200 Subject: [PATCH] frontends/va: Store slice types for H264 decode Cc: mesa-stable Reviewed-by: Leo Liu Part-of: --- src/gallium/frontends/va/picture_h264.c | 1 + src/gallium/include/pipe/p_video_state.h | 1 + 2 files changed, 2 insertions(+) diff --git a/src/gallium/frontends/va/picture_h264.c b/src/gallium/frontends/va/picture_h264.c index 62d94b51db5..f5e99fd795c 100644 --- a/src/gallium/frontends/va/picture_h264.c +++ b/src/gallium/frontends/va/picture_h264.c @@ -186,6 +186,7 @@ void vlVaHandleSliceParameterBufferH264(vlVaContext *context, vlVaBuffer *buf) assert(context->desc.h264.slice_count < max_pipe_h264_slices); context->desc.h264.slice_parameter.slice_info_present = true; + context->desc.h264.slice_parameter.slice_type[context->desc.h264.slice_count] = h264->slice_type; context->desc.h264.slice_parameter.slice_data_size[context->desc.h264.slice_count] = h264->slice_data_size; context->desc.h264.slice_parameter.slice_data_offset[context->desc.h264.slice_count] = h264->slice_data_offset; diff --git a/src/gallium/include/pipe/p_video_state.h b/src/gallium/include/pipe/p_video_state.h index 688e2800267..f8a5fcf07e1 100644 --- a/src/gallium/include/pipe/p_video_state.h +++ b/src/gallium/include/pipe/p_video_state.h @@ -413,6 +413,7 @@ struct pipe_h264_picture_desc { bool slice_info_present; uint32_t slice_count; + uint8_t slice_type[128]; uint32_t slice_data_size[128]; uint32_t slice_data_offset[128]; enum pipe_slice_buffer_placement_type slice_data_flag[128];