Decoder: Treat first slice in a picture as part of new picture always am: 8b5fd8f24e am: 8b75cdae9b am: fb68ae8960 am: a8a3dc84b0 am: 3007985473
am: b19aa035f6
Change-Id: I636809114c259353bac6a090a4b996fecb637970
This commit is contained in:
commit
43fa87413a
1 changed files with 5 additions and 19 deletions
|
|
@ -1259,8 +1259,11 @@ WORD32 ih264d_parse_decode_slice(UWORD8 u1_is_idr_slice,
|
||||||
/*--------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------*/
|
||||||
/* Check if the slice is part of new picture */
|
/* Check if the slice is part of new picture */
|
||||||
/*--------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------*/
|
||||||
i1_is_end_of_poc = 0;
|
/* First slice of a picture is always considered as part of new picture */
|
||||||
if(!ps_dec->u1_first_slice_in_stream)
|
i1_is_end_of_poc = 1;
|
||||||
|
ps_dec->ps_dec_err_status->u1_err_flag &= MASK_REJECT_CUR_PIC;
|
||||||
|
|
||||||
|
if(ps_dec->u4_first_slice_in_pic != 2)
|
||||||
{
|
{
|
||||||
i1_is_end_of_poc = ih264d_is_end_of_pic(u2_frame_num, u1_nal_ref_idc,
|
i1_is_end_of_poc = ih264d_is_end_of_pic(u2_frame_num, u1_nal_ref_idc,
|
||||||
&s_tmp_poc, &ps_dec->s_cur_pic_poc,
|
&s_tmp_poc, &ps_dec->s_cur_pic_poc,
|
||||||
|
|
@ -1268,23 +1271,6 @@ WORD32 ih264d_parse_decode_slice(UWORD8 u1_is_idr_slice,
|
||||||
u1_nal_unit_type, u4_idr_pic_id,
|
u1_nal_unit_type, u4_idr_pic_id,
|
||||||
u1_field_pic_flag,
|
u1_field_pic_flag,
|
||||||
u1_bottom_field_flag);
|
u1_bottom_field_flag);
|
||||||
|
|
||||||
/* since we support only Full frame decode, every new process should
|
|
||||||
* process a new pic
|
|
||||||
*/
|
|
||||||
if((ps_dec->u4_first_slice_in_pic == 2) && (i1_is_end_of_poc == 0))
|
|
||||||
{
|
|
||||||
/* if it is the first slice is process call ,it should be a new frame. If it is not
|
|
||||||
* reject current pic and dont add it to dpb
|
|
||||||
*/
|
|
||||||
ps_dec->ps_dec_err_status->u1_err_flag |= REJECT_CUR_PIC;
|
|
||||||
i1_is_end_of_poc = 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* reset REJECT_CUR_PIC */
|
|
||||||
ps_dec->ps_dec_err_status->u1_err_flag &= MASK_REJECT_CUR_PIC;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*--------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------*/
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue