diff options
author | Harish Mahendrakar <harish.mahendrakar@ittiam.com> | 2021-12-09 00:36:58 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-12-09 00:36:58 +0000 |
commit | 5a442e187896576fc1d295e8c0315914e0c9cd94 (patch) | |
tree | 87232def6b619e1951d500bc4c48362dac3fc51e | |
parent | bbe80a782f0687c82a15e41c60786794917460e2 (diff) | |
parent | 6515f7103dd5091623ac7f060e251c6007348c57 (diff) | |
download | libavc-5a442e187896576fc1d295e8c0315914e0c9cd94.tar.gz |
Move slice increments after completing header parsing am: dc110841d6 am: 9ab629f2b2 am: 2a1fd9a360 am: d2fa8b5c63 am: eff1d4e7cb am: 6515f7103d
Original change: https://googleplex-android-review.googlesource.com/c/platform/external/libavc/+/16407185
Change-Id: I0692763c52495cbdfb98508f61504b717c3173f1
-rw-r--r-- | decoder/ih264d_parse_slice.c | 33 |
1 files changed, 16 insertions, 17 deletions
diff --git a/decoder/ih264d_parse_slice.c b/decoder/ih264d_parse_slice.c index 266c69b..ad033be 100644 --- a/decoder/ih264d_parse_slice.c +++ b/decoder/ih264d_parse_slice.c @@ -1435,23 +1435,6 @@ WORD32 ih264d_parse_decode_slice(UWORD8 u1_is_idr_slice, i1_is_end_of_poc = 0; } - /* Increment only if the current slice has atleast 1 more MB */ - if (ps_dec->u4_first_slice_in_pic == 0 && - (ps_dec->ps_parse_cur_slice->u4_first_mb_in_slice < - (UWORD32)(ps_dec->u2_total_mbs_coded >> ps_dec->ps_cur_slice->u1_mbaff_frame_flag))) - { - ps_dec->ps_parse_cur_slice++; - ps_dec->u2_cur_slice_num++; - // in the case of single core increment ps_decode_cur_slice - if(ps_dec->u1_separate_parse == 0) - { - ps_dec->ps_decode_cur_slice++; - } - } - - ps_dec->u1_slice_header_done = 0; - - if(u1_field_pic_flag) { ps_dec->u2_prv_frame_num = u2_frame_num; @@ -1519,6 +1502,22 @@ WORD32 ih264d_parse_decode_slice(UWORD8 u1_is_idr_slice, } } + /* Increment only if the current slice has atleast 1 more MB */ + if (ps_dec->u4_first_slice_in_pic == 0 && + (ps_dec->ps_parse_cur_slice->u4_first_mb_in_slice < + (UWORD32)(ps_dec->u2_total_mbs_coded >> ps_dec->ps_cur_slice->u1_mbaff_frame_flag))) + { + ps_dec->ps_parse_cur_slice++; + ps_dec->u2_cur_slice_num++; + // in the case of single core increment ps_decode_cur_slice + if(ps_dec->u1_separate_parse == 0) + { + ps_dec->ps_decode_cur_slice++; + } + } + + ps_dec->u1_slice_header_done = 0; + /*--------------------------------------------------------------------*/ /* Copy the values read from the bitstream to the slice header and then*/ /* If the slice is first slice in picture, then do Start of Picture */ |