Fix in returning end of bitstream error for MBAFF
In case of MBAFF streams, slices should terminate on even MB boundary. If bytes are exhausted with odd number of MBs decoded for MBAff, then treat that as error. Bug: 33933140 Change-Id: Ifc26b66ff8ebdb3aec5c0d6c512e4cac3f54c5b7
This commit is contained in:
parent
43a184ad48
commit
7950bf47b6
2 changed files with 8 additions and 0 deletions
|
|
@ -870,6 +870,10 @@ WORD32 ih264d_parse_islice_data_cavlc(dec_struct_t * ps_dec,
|
|||
if(u1_mbaff)
|
||||
{
|
||||
ih264d_update_mbaff_left_nnz(ps_dec, ps_cur_mb_info);
|
||||
if(!uc_more_data_flag && (0 == (i2_cur_mb_addr & 1)))
|
||||
{
|
||||
return ERROR_EOB_FLUSHBITS_T;
|
||||
}
|
||||
}
|
||||
/**************************************************************/
|
||||
/* Get next Macroblock address */
|
||||
|
|
|
|||
|
|
@ -1350,6 +1350,10 @@ WORD32 ih264d_parse_inter_slice_data_cavlc(dec_struct_t * ps_dec,
|
|||
if(u1_mbaff)
|
||||
{
|
||||
ih264d_update_mbaff_left_nnz(ps_dec, ps_cur_mb_info);
|
||||
if(!uc_more_data_flag && !i2_mb_skip_run && (0 == (i2_cur_mb_addr & 1)))
|
||||
{
|
||||
return ERROR_EOB_FLUSHBITS_T;
|
||||
}
|
||||
}
|
||||
/**************************************************************/
|
||||
/* Get next Macroblock address */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue