summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers
diff options
context:
space:
mode:
authorChristian König <[email protected]>2014-02-19 18:49:17 +0100
committerChristian König <[email protected]>2014-02-20 13:34:06 +0100
commit754fa3a0d22596eab4991b7b5dd7cf383bd2f138 (patch)
treea66dc37ea30592e28b56af3b6fcc0ee47a2f2718 /src/gallium/state_trackers
parent57405605a8c320f9d6ea389afd43ce6f013330a5 (diff)
st/omx/dec/h264: fix prevFrameNumOffset handling
Signed-off-by: Christian König <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers')
-rw-r--r--src/gallium/state_trackers/omx/vid_dec_h264.c4
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)