AAC是高級(jí)音頻編碼(Advanced Audio Coding)的縮寫,出現(xiàn)于1997年,最初是基于MPEG-2的音頻編碼技術(shù)。由Fraunhofer IIS、Dolby Laboratories、AT&T、Sony等公司共同開發(fā),目的是取代MP3格式。2000年,MPEG-4標(biāo)準(zhǔn)出臺(tái),AAC重新集成了其它技術(shù)(PS,SBR),為區(qū)別于傳統(tǒng)的MPEG-2 AAC,故含有SBR或PS特性的AAC又稱為MPEG-4 AAC。
AAC是新一代的音頻有損壓縮技術(shù),它通過(guò)一些附加的編碼技術(shù)(比如PS,SBR等),衍生出了LC-AAC,HE-AAC,HE-AACv2三種主要的編碼,LC-AAC就是比較傳統(tǒng)的AAC,相對(duì)而言,主要用于中高碼率(》=80Kbps),HE-AAC(相當(dāng)于AAC+SBR)主要用于中低碼(《=80Kbps),而新近推出的HE-AACv2(相當(dāng)于AAC+SBR+PS)主要用于低碼率(《=48Kbps),事實(shí)上大部分編碼器設(shè)成《=48Kbps自動(dòng)啟用PS技術(shù),而》48Kbps就不加PS,就相當(dāng)于普通的HE-AAC。
二、AAC規(guī)格簡(jiǎn)述AAC共有9種規(guī)格,以適應(yīng)不同的場(chǎng)合的需要:
MPEG-2 AAC LC 低復(fù)雜度規(guī)格(Low Complexity)--比較簡(jiǎn)單,沒(méi)有增益控制,但提高了
編碼效率,在中等碼率的編碼效率以及音質(zhì)方面,都能找到平衡點(diǎn)
MPEG-2 AAC Main 主規(guī)格
MPEG-2 AAC SSR 可變采樣率規(guī)格(Scaleable Sample Rate)
MPEG-4 AAC LC 低復(fù)雜度規(guī)格(Low Complexity)------現(xiàn)在的手機(jī)比較常見(jiàn)的MP4文件中
的音頻部份就包括了該規(guī)格音頻文件
MPEG-4 AAC Main 主規(guī)格 ------包含了除增益控制之外的全部功能,其音質(zhì)最好
MPEG-4 AAC SSR 可變采樣率規(guī)格(Scaleable Sample Rate)
MPEG-4 AAC LTP 長(zhǎng)時(shí)期預(yù)測(cè)規(guī)格(Long Term PrediciTIon)
MPEG-4 AAC LD 低延遲規(guī)格(Low Delay)
MPEG-4 AAC HE 高效率規(guī)格(High Efficiency)-----這種規(guī)格適合用于低碼率編碼,有
Nero ACC 編碼器支持
目前使用最多的是LC和HE(適合低碼率)。流行的Nero AAC編碼程序只支持LC,HE,HEv2這三種規(guī)格,編碼后的AAC音頻,規(guī)格顯示都是LC。HE其實(shí)就是AAC(LC)+SBR技術(shù),HEv2就是AAC(LC)+SBR+PS技術(shù);
HE:“High Efficiency”(高效性)。HE-AAC v1(又稱AACPlusV1,SBR),用容器的方法實(shí)現(xiàn)了AAC(LC)+SBR技術(shù)。SBR其實(shí)代表的是Spectral Band ReplicaTIon(頻段復(fù)制)。簡(jiǎn)要敘述一下,音樂(lè)的主要頻譜集中在低頻段,高頻段幅度很小,但很重要,決定了音質(zhì)。如果對(duì)整個(gè)頻段編碼,若是為了保護(hù)高頻就會(huì)造成低頻段編碼過(guò)細(xì)以致文件巨大;若是保存了低頻的主要成分而失去高頻成分就會(huì)喪失音質(zhì)。SBR把頻譜切割開來(lái),低頻單獨(dú)編碼保存主要成分,高頻單獨(dú)放大編碼保存音質(zhì),“統(tǒng)籌兼顧”了,在減少文件大小的情況下還保存了音質(zhì),完美的化解這一矛盾。
HEv2:用容器的方法包含了HE-AAC v1和PS技術(shù)。PS指“parametric stereo”(參數(shù)立體聲)。原來(lái)的立體聲文件文件大小是一個(gè)聲道的兩倍。但是兩個(gè)聲道的聲音存在某種相似性,根據(jù)香農(nóng)信息熵編碼定理,相關(guān)性應(yīng)該被去掉才能減小文件大小。所以PS技術(shù)存儲(chǔ)了一個(gè)聲道的全部信息,然后,花很少的字節(jié)用參數(shù)描述另一個(gè)聲道和它不同的地方。
三、AAC特點(diǎn)?。?)AAC是一種高壓縮比的音頻壓縮算法,但它的壓縮比要遠(yuǎn)超過(guò)較老的音頻壓縮算法,
如AC-3、MP3等。并且其質(zhì)量可以同未壓縮的CD音質(zhì)相媲美。
?。?)同其他類似的音頻編碼算法一樣,AAC也是采用了變換編碼算法,但AAC使用了分辨率
更高的濾波器組,因此它可以達(dá)到更高的壓縮比。
?。?)AAC使用了臨時(shí)噪聲重整、后向自適應(yīng)線性預(yù)測(cè)、聯(lián)合立體聲技術(shù)和量化哈夫曼編碼等最新技術(shù),這些新技術(shù)的使用都使壓縮比得到進(jìn)一步的提高。
?。?)AAC支持更多種采樣率和比特率、支持1個(gè)到48個(gè)音軌、支持多達(dá)15個(gè)低頻音軌、具有
多種語(yǔ)言的兼容能力、還有多達(dá)15個(gè)內(nèi)嵌數(shù)據(jù)流。
(5)AAC支持更寬的聲音頻率范圍,最高可達(dá)到96kHz,最低可達(dá)8KHz,遠(yuǎn)寬于MP3的16KHz-48kHz的范圍。
?。?)不同于MP3及WMA,AAC幾乎不損失聲音頻率中的甚高、甚低頻率成分,并且比WMA在頻譜結(jié)構(gòu)上更接近于原始音頻,因而聲音的保真度更好。專業(yè)評(píng)測(cè)中表明,AAC比WMA聲音更清晰,而且更接近原音。
?。?)AAC采用優(yōu)化的算法達(dá)到了更高的解碼效率,解碼時(shí)只需較少的處理能力。
四、AAC音頻文件格式1. AAC的音頻文件格式有ADIF & ADTS:
ADIF:Audio Data Interchange Format 音頻數(shù)據(jù)交換格式。這種格式的特征是可以確定的找到這個(gè)音頻數(shù)據(jù)的開始,不需進(jìn)行在音頻數(shù)據(jù)流中間開始的解碼,即它的解碼必須在明確定義的開始處進(jìn)行。故這種格式常用在磁盤文件中。
ADTS:Audio Data Transport Stream 音頻數(shù)據(jù)傳輸流。這種格式的特征是它是一個(gè)有同步字的比特流,解碼可以在這個(gè)流中任何位置開始。它的特征類似于mp3數(shù)據(jù)流格式。
簡(jiǎn)單說(shuō),ADTS可以在任意幀解碼,也就是說(shuō)它每一幀都有頭信息。ADIF只有一個(gè)統(tǒng)一的頭,所以必須得到所有的數(shù)據(jù)后解碼。且這兩種的header的格式也是不同的,目前一般編碼后的和抽取出的都是ADTS格式的音頻流。兩者具體的組織結(jié)構(gòu)如下所示:
AAC的ADIF格式見(jiàn)下圖:
AAC的ADTS的一般格式見(jiàn)下圖:
圖中表示出了ADTS一幀的簡(jiǎn)明結(jié)構(gòu),其兩邊的空白矩形表示一幀前后的數(shù)據(jù)。
2. ADIF和ADTS的header
ADIF 的頭信息:
ADIF頭信息位于AAC文件的起始處,接下來(lái)就是連續(xù)的 raw data blocks。
組成ADIF頭信息的各個(gè)域如下所示:
ADTS 的固定頭信息:
ADTS的可變頭信息:
?。?)幀同步目的在于找出幀頭在比特流中的位置,13818-7規(guī)定,aac ADTS格式的幀頭
同步字為12比特的“1111 1111 1111”。
?。?)ADTS的頭信息為兩部分組成,其一為固定頭信息,緊接著是可變頭信息。固定頭信息中
的數(shù)據(jù)每一幀都相同,而可變頭信息則在幀與幀之間可變。
3.AAC元素信息
在AAC中,原始數(shù)據(jù)塊的組成可能有六種不同的元素:
SCE: Single Channel Element單通道元素。單通道元素基本上只由一個(gè)ICS組成。一個(gè)
原始數(shù)據(jù)塊最可能由16個(gè)SCE組成。
CPE: Channel Pair Element 雙通道元素,由兩個(gè)可能共享邊信息的ICS和一些聯(lián)合立體
聲編碼信息組成。一個(gè)原始數(shù)據(jù)塊最多可能由16個(gè)SCE組成。
CCE: Coupling Channel Element 藕合通道元素。代表一個(gè)塊的多通道聯(lián)合立體聲信息
或者多語(yǔ)種程序的對(duì)話信息。
LFE: Low Frequency Element 低頻元素。包含了一個(gè)加強(qiáng)低采樣頻率的通道。
DSE: Data Stream Element 數(shù)據(jù)流元素,包含了一些并不屬于音頻的附加信息。
PCE: Program Config Element 程序配置元素。包含了聲道的配置信息。它可能出現(xiàn)在
ADIF 頭部信息中。
FIL: Fill Element 填充元素。包含了一些擴(kuò)展信息。如SBR,動(dòng)態(tài)范圍控制信息等。
4.AAC文件處理流程
(1) 判斷文件格式,確定為ADIF或ADTS
(2) 若為ADIF,解ADIF頭信息,跳至第6步。
(3) 若為ADTS,尋找同步頭。
(4)解ADTS幀頭信息。
(5)若有錯(cuò)誤檢測(cè),進(jìn)行錯(cuò)誤檢測(cè)。
(6)解塊信息。
(7)解元素信息。