转自:http://blog.csdn.net/wlsfling/article/details/5876016
纲要:
* AAC概述
* AAC规格简述
* AAC特点
* AAC音频文件解析
——ADIF&ADTS格式
——ADIF&ADTS头信息
——ADIF&ADTS数据信息
——AAC文件处理流程
* AAC解码流程
——技术解析
* 术语说明
术语说明:
AAC: Advanced Audio Coding 高级音频编码
AAC LC: AAC with Low Complexity AAC的低复杂度配置
AAC plus: 也叫HE-AAC, AAC+,MPEG4 AAC LC加入SBR模块后形成的一个AAC版本
MPEG:Motion Picture Expert Group
IMDCT:反离散余弦变换
ADIF:Audio Data Interchange Format 音频数据交换格式
ADTS:Audio Data Transport Stream 音频数据传输流
SCE: Single Channel Element单通道元素
CPE: Channel Pair Element 双通道元素
CCE: Coupling Channel Element 藕合通道元素
DSE: Data Stream Element 数据流元素
PCE: Program Config Element 程序配置元素
FIL: Fill Element 填充元素
ICS: Individual Channel Stream 独立通道流
PNS: Perceptual Noise Substitution 知觉噪声替换
SBR: Spectral Band Replication 频段复制
TNS: Temporal Noise Shaping 瞬时噪声整形
ch:channel 通道
PS:parametric stereo 参数立体声
SBR:Spectral Band Replication 频段复制
一.AAC概述
AAC是高级音频编码(Advanced Audio Coding)的缩写,出现于1997年,最初是基于MPEG-2的音频编码技术。由Fraunhofer IIS、Dolby Laboratories、AT&T、Sony等公司共同开发,目的是取代MP3格式。2000年,MPEG-4标准出台,AAC重新集成了其它技术(PS,SBR),为区别于传统的MPEG-2 AAC,故含有SBR或PS特性的AAC又称为MPEG-4 AAC。
AAC是新一代的音频有损压缩技术,它通过一些附加的编码技术(比如PS,SBR等),衍生出了LC-AAC,HE-AAC,HE-AACv2三种主要的编码,LC-AAC就是比较传统的AAC,相对而言,主要用于中高码率(>=80Kbps),HE-AAC(相当于AAC+SBR)主要用于中低码(<=80Kbps),而新近推出的HE-AACv2(相当于AAC+SBR+PS)主要用于低码率(<=48Kbps),事实上大部分编码器设成<=48Kbps自动启用PS技术,而>48Kbps就不加PS,就相当于普通的HE-AAC。
二、AAC规格简述
AAC共有9种规格,以适应不同的场合的需要:
MPEG-2 AAC LC 低复杂度规格(Low Complexity)--比较简单,没有增益控制,但提高了
编码效率,在中等码率的编码效率以及音质方面,都能找到平衡点