mirror of
https://github.com/ittiam-systems/libavc.git
synced 2026-10-06 18:41:34 +07:00
Decoder: Fix in checking for valid profile flags
Apart from Baseline, main and high profile, only extended profile is supported provided, constraint_set0_flag or constraint_set1_flag are set to 1 Bug: 31999646 Change-Id: I3b62069efc49e222a7126fba0805fa9124aac8f2
This commit is contained in:
parent
23d5bc6405
commit
d7eee555dc
2 changed files with 8 additions and 11 deletions
|
|
@ -257,6 +257,7 @@ enum
|
||||||
/** Profile Types*/
|
/** Profile Types*/
|
||||||
#define BASE_PROFILE_IDC 66
|
#define BASE_PROFILE_IDC 66
|
||||||
#define MAIN_PROFILE_IDC 77
|
#define MAIN_PROFILE_IDC 77
|
||||||
|
#define EXTENDED_PROFILE_IDC 88
|
||||||
#define HIGH_PROFILE_IDC 100
|
#define HIGH_PROFILE_IDC 100
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -533,18 +533,14 @@ WORD32 ih264d_parse_sps(dec_struct_t *ps_dec, dec_bit_stream_t *ps_bitstrm)
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
||||||
if((uc_constraint_set1_flag != 1) && (uc_constraint_set0_flag != 1))
|
/* Apart from Baseline, main and high profile,
|
||||||
|
* only extended profile is supported provided
|
||||||
|
* uc_constraint_set0_flag or uc_constraint_set1_flag are set to 1
|
||||||
|
*/
|
||||||
|
if((u1_profile_idc != EXTENDED_PROFILE_IDC) ||
|
||||||
|
((uc_constraint_set1_flag != 1) && (uc_constraint_set0_flag != 1)))
|
||||||
{
|
{
|
||||||
if(NULL != ps_dec)
|
return (ERROR_FEATURE_UNAVAIL);
|
||||||
{
|
|
||||||
UWORD32 i4_error_code;
|
|
||||||
i4_error_code = ERROR_FEATURE_UNAVAIL;
|
|
||||||
return i4_error_code;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return (ERROR_FEATURE_UNAVAIL);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue