diff --git a/src/gallium/frontends/va/picture_h264_enc.c b/src/gallium/frontends/va/picture_h264_enc.c index 9920b738760..e7195acfb4c 100644 --- a/src/gallium/frontends/va/picture_h264_enc.c +++ b/src/gallium/frontends/va/picture_h264_enc.c @@ -751,7 +751,8 @@ static void parseEncPpsParamsH264(vlVaContext *context, struct vl_rbsp *rbsp) pic->deblocking_filter_control_present_flag = vl_rbsp_u(rbsp, 1); pic->constrained_intra_pred_flag = vl_rbsp_u(rbsp, 1); pic->redundant_pic_cnt_present_flag = vl_rbsp_u(rbsp, 1); - if (vl_rbsp_more_data(rbsp)) { + pic->more_rbsp_data = vl_rbsp_more_data(rbsp); + if (pic->more_rbsp_data) { pic->transform_8x8_mode_flag = vl_rbsp_u(rbsp, 1); if (vl_rbsp_u(rbsp, 1)) { /* pic_scaling_matrix_present_flag */ debug_error("PPS scaling matrix not supported"); diff --git a/src/gallium/include/pipe/p_video_state.h b/src/gallium/include/pipe/p_video_state.h index ab5a06e5992..bb06e1075c7 100644 --- a/src/gallium/include/pipe/p_video_state.h +++ b/src/gallium/include/pipe/p_video_state.h @@ -724,6 +724,7 @@ struct pipe_h264_enc_pic_control uint32_t deblocking_filter_control_present_flag : 1; uint32_t constrained_intra_pred_flag : 1; uint32_t redundant_pic_cnt_present_flag : 1; + uint32_t more_rbsp_data : 1; uint32_t transform_8x8_mode_flag : 1; }; uint8_t nal_ref_idc;