summaryrefslogtreecommitdiffstats
path: root/decoder/ih264d_api.c
diff options
context:
space:
mode:
authorHarish Mahendrakar <harish.mahendrakar@ittiam.com>2016-07-12 10:37:28 +0530
committerRobert Shih <robertshih@google.com>2016-07-13 17:32:27 -0700
commitb926905ee245644806e62bef92b61c8832c44fd8 (patch)
tree85df344990e693c38c4a7795c7e72672d39b5505 /decoder/ih264d_api.c
parentdaefcde2ed0e77cda4baa1964aac255ff41a9b1d (diff)
downloadandroid_external_libavc-b926905ee245644806e62bef92b61c8832c44fd8.tar.gz
android_external_libavc-b926905ee245644806e62bef92b61c8832c44fd8.tar.bz2
android_external_libavc-b926905ee245644806e62bef92b61c8832c44fd8.zip
Fixed error concealment when no MBs are decoded in the current pic
Bug: 29493002 Change-Id: I3fae547ddb0616b4e6579580985232bd3d65881e
Diffstat (limited to 'decoder/ih264d_api.c')
-rw-r--r--decoder/ih264d_api.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/decoder/ih264d_api.c b/decoder/ih264d_api.c
index 17dfae4..2ce6f1f 100644
--- a/decoder/ih264d_api.c
+++ b/decoder/ih264d_api.c
@@ -3124,6 +3124,9 @@ WORD32 ih264d_video_decode(iv_obj_t *dec_hdl, void *pv_api_ip, void *pv_api_op)
else
prev_slice_err = 2;
+ if(ps_dec->u4_first_slice_in_pic && (ps_dec->u2_total_mbs_coded == 0))
+ prev_slice_err = 1;
+
ret1 = ih264d_mark_err_slice_skip(ps_dec, num_mb_skipped, ps_dec->u1_nal_unit_type == IDR_SLICE_NAL, ps_dec->ps_cur_slice->u2_frame_num,
&temp_poc, prev_slice_err);