网页视频之ACC格式解析

H264封装成fmp4再到H5+MSE播放已经告一段落,现在来攻关音频封装到fmp4,音频主要选择AAC编码。今天就研究一下AAC编码的结构。

AAC音频前面有个头为ADTS,后面才是AAC的音频数据。 

ADTS(Audio Data Transport Stream):

定义如下:


adts_fixed_header定义如下:

一共28bit,3个字节+4bit,上码流:

syscword: 1111  1111  1111

ID: 0

layer: 00

protection_absent:1

profile: 01

profile 表示使用哪个级别的AAC,如01 Low Complexity(LC)--- AACLC

sampling_frequency_index:1011 ====>8000

private_bit: 0

channel_configuration: 001

original_copy:0

home: 0

adts_variable_header定义如下:

一共28bit,3字节+4bit

上码流:

40和前面的40共用,这里使用了后面的4bit

copyright_identifycation_bit : 0

copyright_identification_start : 0

acc_frame_length:00    0100  1000  100  ==>580 包括头+音频数据总大小

adts_buffer_fulness: 1  1111  1111 11

number_of_raw_data_blocks_in_frame: 00


adts_variable_header定义如下:

由于protecttion_absent==1 所以没有值

raw_data_block定义如下:





猜你喜欢

转载自blog.csdn.net/g0415shenw/article/details/80872982
acc