ADTS
全称是Audio Data Transport Stream
,是AAC
的一种十分常见的传输格式。一般的AAC
解码器都需要把AAC
的ES
流打包成ADTS
格式,一般是在AAC ES
流前添加7
个字节的ADTS header
。也就是说,可以把ADTS
这个头看作是AAC
的frameheader
。
ADTS内容及结构
ADTS
头中相对有用的信息:采样率、声道数、帧长度,每一个带ADTS
头信息的AAC
流会清晰的告知解码器需要的这些信息。一般情况下ADTS
的头信息都是7
个字节,分为2
部分:
adts_fixed_header();
adts_variable_header();
syncword
:同步头总是0xFFF
, all bits must be 1
,代表着一个ADTS
帧的开始ID
:MPEG Version: 0 for MPEG-4, 1 for MPEG-2
Layer
:always: '00'
profile
:表示使用哪个级别的AAC
,有些只支持AAC LC
。在MPEG-2 AAC
中定义了3
种:
sampling_frequency_index
:表示使用的采样率下标,通过这个下标在Sampling Frequencies[ ]
数组中查找得知采样率的值。
0: 96000 Hz
1: 88200 Hz
2: 64000 Hz
3: 48000 Hz
4: 44100 Hz
5: 32000 Hz
6: 24000 Hz
7: 22050 Hz
8: 16000 Hz
9: 12000 Hz
10: 11025 Hz
11: 8000 Hz
12: 7350 Hz
13: Reserved
14: Reserved
15: frequency is written explictly
channel_configuration
: 表示声道数
0: Defined in AOT Specifc Config
1: 1 channel: front-center
2: 2 channels: front-left, front-right
3: 3 channels: front-center, front-left, front-right
4: 4 channels: front-center, front-left, front-right, back-center
5: 5 channels: front-center, front-left, front-right, back-left, back-right
6: 6 channels: front-center, front-left, front-right, back-left, back-right, LFE-channel
7: 8 channels: front-center, front-left, front-right, side-left, side-right, back-left, back-right, LFE-channel
8-15: Reserved
frame_length
: 一个ADTS
帧的长度包括ADTS
头和AAC
原始adts_buffer_fullness
:0x7FF
说明是码率可变的码流
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。