Apple container
Raw stream
高级音频编码(英语:Advanced Audio Coding,AAC),出现于1997年,为一种基于MPEG-2的有损数字音频压缩的专利音频编码标准,由Fraunhofer IIS、杜比实验室、AT&T、Sony、Nokia等公司共同开发。2000年,MPEG-4标准在原本的基础上加上了PNS(Perceptual Noise Substitution)等技术,并提供了多种扩展工具。为了区别于传统的MPEG-2 AAC又称为MPEG-4 AAC。其作为MP3的后继者而被设计出来,在相同的比特率之下,AAC相较于MP3通常可以达到更好的声音质量。
AAC由国际标准化组织及国际电工委员会标准化为MPEG-2及MPEG-4规格的一部分。部分的AAC、HE-AAC(AAC+)为MPEG-4音频的一部分,并且被采用在数字声音广播、世界数字广播两个数字广播标准中以及DVB-H、ATSC-M/H两个移动电视标准中。
AAC支持包含一个流中48个最高至96 kHz的全带宽声道,加上16个120 Hz的低频声道(LFE)、不多于16个耦合声道及数据流。在joint stereo模式下,要使立体声的质量达到可接受的程度仅需96 kbps的比特率,若要达到Hi-fi则最少需要在可变比特率下128 kbps。
AAC 被YouTube、iPhone、iPod、 iPad、 任天堂DSi、任天堂3DS、iTunes、DivX、PlayStation 3和多款Nokia 40系列、Sony Ericsson手机采用为默认的音频编码格式,并且被PlayStation Vita、Wii、Sony Walkman MP3系列及随后的Android、BlackBerry等移动操作系统支持。
AAC编码的主要扩展名有三种:
作为一种高压缩比的音频压缩算法,AAC压缩比通常为18:1,也有数据说为20:1;在音质方面,由于采用多声道,和使用低复杂性的描述方式,使其比几乎所有的传统编码方式在同规格的情况下更胜一筹。不过直到2006年,使用这一格式存储音乐的并不多,可以播放该格式的mp3播放器更是少之又少,目前所知仅有苹果iPod、Sony Walkman(NWZ-A、NWZ-S、NWZ-E、NWZ-X系列)、任天堂NDSi和iPhone(微软推出的Windows 7附带的Windows Media Player 12也支持AAC)。此外电脑上很多音乐播放软件都支持AAC(前提是安装过AAC解码器),如苹果iTunes。但在移动电话领域,AAC的支持度已很普遍,Nokia、Sony Ericsson、Motorola等品牌均在其中高端产品中支持AAC(一开始主要是LC-AAC,随着移动电话性能的发展,HE-AAC的支持也已广泛)。
AAC是作为MP3的后继者被设计出来,在1990年代后期的双盲试验中显示在相同的比特率下,AAC比MP3表现出更好的声音质量。
AAC相较于MP3的改进包含:
整体而言,AAC格式相较于MP3给予开发者在设计编码上更大的弹性,并且修正许多在MPEG-1音频规格上的设计选择,这些增加的弹性使得更多的编码策略可以同时存在,进而达成更高的压缩效率。尽管如此,若要论及AAC是否比MP3好,AAC并没有完全的决定性的优势,MP3虽然较为古老且有相当的瑕疵,却也被证实是意外的坚固耐用。在低比特率的情况下(通常低于128 kbps),AAC及HE-AAC则因为更好的立体声编码、纯粹的MDCT及更好的窗函数长度,优于MP3,尤其在极低比特率的情况下优势更为显著。
MP3作为最早数年音乐开始在网络上传播、分享所被使用的格式,拥有最为普遍的软件及硬件支持,AAC则由于一些产业界持续坚定的支持,成为MP3一个有力的竞争对手,另一个竞争对手是开源产业界支持的IETF标准开放格式Opus (音频格式)。
AAC是一种宽带音频编码算法,主要利用以下两种编码策略来大幅减少存储高质量数字音频所需要的数据量:
实际的编码流程包含以下步骤:
在MPEG-4中并没有定义一个单一的高效率压缩流程,而是一组复杂的工具来达成从低编码速率的语音编码到高质量音频压缩、音乐合成等广泛的操作。
AAC编码器可以动态的在单一的1024点MDCT区块或8个128点区块之间切换(或960及120点)
高效AAC(HE-AAC,英语:High-Efficiency AAC)为有损数据压缩技术,是对高级音频编码(AAC)的扩展。HE-AAC v1使用频段复制(英语:Spectral Band Replication)(SBR,英语:Spectral Band Replication)提高频域的压缩效率,适用于低码率(64kbps以下)。HE-AAC v2结合使用SBR和参数立体声(英语:Parametric Stereo)(PS,英语:Parametric Stereo)提高立体声信号的压缩效率。HE-AAC v2进一步降低了对码率的需求(接近于50%),被应用于类似于DAB等码率资源很有限的领域。
HE-AAC之另一常见名称aacPlus(aac+),为开发SBR之公司Coding Technologies的注册商标。MPEG组织于2003年五月将aac+纳入ISO/IEC 14496-3(MPEG-4 Part 3(英语:MPEG-4 Part 3))。HE-AAC适合于在低比特率(low bitrates)的应用,如:网络电台、数字电视等,其宣称在48kbps的音质可以比128kbps的MP3还好,主要的竞争对象是无专利的IETF标准开放格式Opus。
HE-AAC之不同版本:
因为AAC是一个庞大家族,他们共分为9种规格,以适应不同场合的需要,也正是由于AAC的规格(Profile)繁多,导致普通电脑用户感觉十分困扰:
MPEG-4 AAC LC(Low Complexity)是最常用的规格,我们叫“低复杂度规格”,我们简称“LC-AAC”,这种规格在中等码率的编码效率以及音质方面,都能找到平衡点。所谓中等码率,就是指:96kbps-192kbps之间的码率。因此,如果要使用LC-AAC规格,请尽可能把码率控制在之前说的那个区间内。
由于AAC格式家族比较庞大,要了解他,首先要清楚其各有不同的编码器,目前包括了商业的、免费的AAC格式音频编码器,其中几个主要的编码器如下:
另外还有Psytel(已停止开发),Coding Technologies(已被杜比实验室收购),HHI/z Plane(Compaact),Dolby AAC等AAC编码器,而其他如Panasonic、Nokia、AT&T、NEC等公司也都有独家开发的编码器,在大家弄清楚这些AAC格式音频规格和编码器之后,我们就不难知道为什么同一款手机会支持看起来都是AAC格式音频的诸多文件格式了,比如Nokia 6230i就是既支持AAC格式也支持M4A格式和MP4格式的机型,而这些音频文件格式其实都是属于AAC家族成员。
目前听到用的比较多的应该是LC和HE(适合低码率)。
HE:“high efficiency”(高效性)。HE-AAC v1(又称AACPlusV1,SBR)用容器的方法加了原AAC(LC)+SBR技术。SBR其实代表的是Spectral Band Replication(频段复制)。简单概括一下,音乐的主要频谱集中在低频段,高频段幅度很小,如果对整个频段编码,要么为了保护高频造成低频段编码过细以致文件巨大,要么为了保存了低频的主要成分而失去高频成分以致丧失音质。SBR把频谱切割开来,低频单独编码保存主要成分,高频单独放大编码保存音质,在相同音质下降低了文件大小。
HEv2(又称为HEPS)它用容器的方法包含了HE-AAC v1和PS技术。PS指“Parametric Stereo”(参数立体声)。这个其实好理解,原来的立体声文件,文件大小是一个声道的两倍。但是两个声道的声音存在某种相似性,根据香农信息熵编码定理,相关性应该被去掉才能减小文件大小。所以PS技术存储了一个声道的全部信息,然后,花很少的字节用参数描述另一个声道和它不同的地方。
用户不需要许可或付款来流式传输或分发AAC格式的内容。这个原因可以使AAC比照其前身的MP3一样,特别是根据适用于流媒体(如互联网广播)分发内容成为更有吸引力的格式。
然而,AAC 编解码器的所有制造商或开发商都需要专利许可。 因此,FFmpeg和FAAC等自由开放源代码软件的实现可能仅以源代码形式分发,以避免专利侵权。