st/va: directly use idr pic flag
authorBoyuan Zhang <boyuan.zhang@amd.com>
Fri, 8 Dec 2017 23:22:25 +0000 (18:22 -0500)
committerLeo Liu <leo.liu@amd.com>
Fri, 15 Dec 2017 21:04:05 +0000 (16:04 -0500)
Remove is_idr flag, and use idr_pic_flag provided by vaapi directly

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
src/gallium/state_trackers/va/picture.c

index 55ca16e1695d1a6da2a1ecf3a1fac1a6bad68aaa..895157375a682a1044f03d8d99752410d283c5bb 100644 (file)
@@ -432,7 +432,6 @@ handleVAEncPictureParameterBufferType(vlVaDriver *drv, vlVaContext *context, vlV
    h264 = buf->data;
    context->desc.h264enc.frame_num = h264->frame_num;
    context->desc.h264enc.not_referenced = false;
-   context->desc.h264enc.is_idr = (h264->pic_fields.bits.idr_pic_flag == 1);
    context->desc.h264enc.pic_order_cnt = h264->CurrPic.TopFieldOrderCnt;
    if (context->desc.h264enc.gop_cnt == 0)
       context->desc.h264enc.i_remain = context->gop_coeff;
@@ -451,7 +450,7 @@ handleVAEncPictureParameterBufferType(vlVaDriver *drv, vlVaContext *context, vlV
                       UINT_TO_PTR(h264->CurrPic.picture_id),
                       UINT_TO_PTR(h264->frame_num));
 
-   if (context->desc.h264enc.is_idr)
+   if (h264->pic_fields.bits.idr_pic_flag == 1)
       context->desc.h264enc.picture_type = PIPE_H264_ENC_PICTURE_TYPE_IDR;
    else
       context->desc.h264enc.picture_type = PIPE_H264_ENC_PICTURE_TYPE_P;
@@ -493,10 +492,9 @@ handleVAEncSliceParameterBufferType(vlVaDriver *drv, vlVaContext *context, vlVaB
    else if (h264->slice_type == 0)
       context->desc.h264enc.picture_type = PIPE_H264_ENC_PICTURE_TYPE_P;
    else if (h264->slice_type == 2) {
-      if (context->desc.h264enc.is_idr){
-         context->desc.h264enc.picture_type = PIPE_H264_ENC_PICTURE_TYPE_IDR;
+      if (context->desc.h264enc.picture_type == PIPE_H264_ENC_PICTURE_TYPE_IDR)
          context->desc.h264enc.idr_pic_id++;
-          else
+          else
          context->desc.h264enc.picture_type = PIPE_H264_ENC_PICTURE_TYPE_I;
    } else
       context->desc.h264enc.picture_type = PIPE_H264_ENC_PICTURE_TYPE_SKIP;