diff options
-rw-r--r-- | src/gallium/state_trackers/omx/vid_dec_h264.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/omx/vid_dec_h264.c b/src/gallium/state_trackers/omx/vid_dec_h264.c index 5f4a261705c..7f1c2facc39 100644 --- a/src/gallium/state_trackers/omx/vid_dec_h264.c +++ b/src/gallium/state_trackers/omx/vid_dec_h264.c @@ -765,6 +765,8 @@ static void slice_header(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp, else FrameNumOffset = priv->codec_data.h264.prevFrameNumOffset; + priv->codec_data.h264.prevFrameNumOffset = FrameNumOffset; + if (sps->num_ref_frames_in_pic_order_cnt_cycle != 0) absFrameNum = FrameNumOffset + frame_num; else @@ -814,6 +816,8 @@ static void slice_header(vid_dec_PrivateType *priv, struct vl_rbsp *rbsp, else FrameNumOffset = priv->codec_data.h264.prevFrameNumOffset; + priv->codec_data.h264.prevFrameNumOffset = FrameNumOffset; + if (IdrPicFlag) tempPicOrderCnt = 0; else if (nal_ref_idc == 0) |