|
|
|
@ -31,7 +31,7 @@ int avpriv_aac_parse_header(GetBitContext *gbc, AACADTSHeaderInfo *hdr) |
|
|
|
|
int size, rdb, ch, sr; |
|
|
|
|
int aot, crc_abs; |
|
|
|
|
|
|
|
|
|
if(get_bits(gbc, 12) != 0xfff) |
|
|
|
|
if (get_bits(gbc, 12) != 0xfff) |
|
|
|
|
return AAC_AC3_PARSE_ERROR_SYNC; |
|
|
|
|
|
|
|
|
|
skip_bits1(gbc); /* id */ |
|
|
|
@ -39,7 +39,7 @@ int avpriv_aac_parse_header(GetBitContext *gbc, AACADTSHeaderInfo *hdr) |
|
|
|
|
crc_abs = get_bits1(gbc); /* protection_absent */ |
|
|
|
|
aot = get_bits(gbc, 2); /* profile_objecttype */ |
|
|
|
|
sr = get_bits(gbc, 4); /* sample_frequency_index */ |
|
|
|
|
if(!avpriv_mpeg4audio_sample_rates[sr]) |
|
|
|
|
if (!avpriv_mpeg4audio_sample_rates[sr]) |
|
|
|
|
return AAC_AC3_PARSE_ERROR_SAMPLE_RATE; |
|
|
|
|
skip_bits1(gbc); /* private_bit */ |
|
|
|
|
ch = get_bits(gbc, 3); /* channel_configuration */ |
|
|
|
@ -51,7 +51,7 @@ int avpriv_aac_parse_header(GetBitContext *gbc, AACADTSHeaderInfo *hdr) |
|
|
|
|
skip_bits1(gbc); /* copyright_identification_bit */ |
|
|
|
|
skip_bits1(gbc); /* copyright_identification_start */ |
|
|
|
|
size = get_bits(gbc, 13); /* aac_frame_length */ |
|
|
|
|
if(size < AAC_ADTS_HEADER_SIZE) |
|
|
|
|
if (size < AAC_ADTS_HEADER_SIZE) |
|
|
|
|
return AAC_AC3_PARSE_ERROR_FRAME_SIZE; |
|
|
|
|
|
|
|
|
|
skip_bits(gbc, 11); /* adts_buffer_fullness */ |
|
|
|
|