Decoder: Fixes in handling errors in Mbaff clips. am: 6676aeb419 am: fab0729908
am: 05bd0e8d4c
Change-Id: I78ca16a72ff78b89568ccca865d389f1d6cfd672
This commit is contained in:
commit
69b2803e55
2 changed files with 8 additions and 7 deletions
|
|
@ -1693,14 +1693,14 @@ WORD32 ih264d_mark_err_slice_skip(dec_struct_t * ps_dec,
|
|||
ps_dec->ps_parse_cur_slice->ppv_map_ref_idx_to_poc = (volatile void **)pu1_buf;
|
||||
}
|
||||
|
||||
ps_dec->ps_cur_slice->u2_first_mb_in_slice = ps_dec->u2_total_mbs_coded << u1_mbaff;
|
||||
ps_dec->ps_cur_slice->u2_first_mb_in_slice = ps_dec->u2_total_mbs_coded >> u1_mbaff;
|
||||
ps_dec->ps_cur_slice->i1_slice_alpha_c0_offset = 0;
|
||||
ps_dec->ps_cur_slice->i1_slice_beta_offset = 0;
|
||||
|
||||
if(ps_dec->ps_cur_slice->u1_field_pic_flag)
|
||||
ps_dec->u2_prv_frame_num = ps_dec->ps_cur_slice->u2_frame_num;
|
||||
|
||||
ps_dec->ps_parse_cur_slice->u4_first_mb_in_slice = ps_dec->u2_total_mbs_coded << u1_mbaff;
|
||||
ps_dec->ps_parse_cur_slice->u4_first_mb_in_slice = ps_dec->u2_total_mbs_coded >> u1_mbaff;
|
||||
ps_dec->ps_parse_cur_slice->u2_log2Y_crwd = ps_dec->ps_cur_slice->u2_log2Y_crwd;
|
||||
|
||||
|
||||
|
|
@ -1723,6 +1723,11 @@ WORD32 ih264d_mark_err_slice_skip(dec_struct_t * ps_dec,
|
|||
ps_dec->ps_parse_cur_slice->slice_type = P_SLICE;
|
||||
ps_dec->pf_mvpred_ref_tfr_nby2mb = ih264d_mv_pred_ref_tfr_nby2_pmb;
|
||||
ps_dec->ps_part = ps_dec->ps_parse_part_params;
|
||||
ps_dec->u2_mbx =
|
||||
(MOD(ps_dec->ps_cur_slice->u2_first_mb_in_slice - 1, ps_dec->u2_frm_wd_in_mbs));
|
||||
ps_dec->u2_mby =
|
||||
(DIV(ps_dec->ps_cur_slice->u2_first_mb_in_slice - 1, ps_dec->u2_frm_wd_in_mbs));
|
||||
ps_dec->u2_mby <<= u1_mbaff;
|
||||
|
||||
/******************************************************/
|
||||
/* Parsing / decoding the slice */
|
||||
|
|
|
|||
|
|
@ -676,11 +676,7 @@ WORD32 ih264d_init_dec_mb_grp(dec_struct_t *ps_dec)
|
|||
dec_seq_params_t *ps_seq = ps_dec->ps_cur_sps;
|
||||
UWORD8 u1_frm = ps_seq->u1_frame_mbs_only_flag;
|
||||
|
||||
ps_dec->u1_recon_mb_grp = PARSE_MB_GROUP_4;
|
||||
|
||||
//NMB set to width in MBs for non-mbaff cases
|
||||
if(0 == ps_seq->u1_mb_aff_flag)
|
||||
ps_dec->u1_recon_mb_grp = ps_dec->u2_frm_wd_in_mbs;
|
||||
ps_dec->u1_recon_mb_grp = ps_dec->u2_frm_wd_in_mbs << ps_seq->u1_mb_aff_flag;
|
||||
|
||||
ps_dec->u1_recon_mb_grp_pair = ps_dec->u1_recon_mb_grp >> 1;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue