董寧
(西安外事學院 陜西 西安 710077)
近年來,MP3(MPEG-1 layer3)播放器倍受人們的喜愛,主要是因為MP3播放器既具有出色的音質(zhì)又有大的存儲容量,對于數(shù)字音頻的存儲、處理和傳輸都提出了很高的要求,所以在保證一定質(zhì)量的基礎(chǔ)上,應(yīng)該采用一定的方法來壓縮音頻數(shù)據(jù),以達到降低碼率的目的[8]。
MPEG-1音頻壓縮標準提供了一種高保真度,高壓縮比的壓縮算法。根據(jù)編碼計算復雜度及編碼效率的不同,分為層Ⅰ、層Ⅱ和層Ⅲ3種標準,層次越高編碼后的音質(zhì)就越好,壓縮率也越高,其編碼的算法也就越復雜,對計算機的能力要求也就越高。層Ⅲ就是應(yīng)用最為流行的MP3音樂格式,也是目前音頻領(lǐng)域中最流行的[1-2]。
音頻壓縮是指利用數(shù)字信號處理的技術(shù)對原始的數(shù)字音頻信號流進行處理,在不損失其有用信息量的條件下,降低信號的碼率的過程,也稱壓縮編碼;其相應(yīng)的逆過程稱為解壓縮或解碼[3]。
聲音信號一般由許多不同頻率的信號組成,聲音的帶寬表示組成復合聲音信號的頻率范圍。人耳能感應(yīng)到的頻率范圍,大致在20 Hz~20 kHz之間,只有頻率范圍在這個范圍之內(nèi)的信號才稱為音頻信號,而低于20 Hz的信號稱為亞音信號,高于20 kHz的信號稱為超聲波信號[9]。
音頻壓縮技術(shù)算法主要可以劃分為波形編碼和感知編碼兩大類,波形編碼編譯碼器的計算復雜度相對較低,它是以音頻信號的波形為基礎(chǔ),使重建后的音頻波形盡可能地和原始波形保持一致。
感知編碼過程首先要對輸入的音頻信號的頻率和振幅進行分析,然后將其與人的聽覺感知模型進行比較,根據(jù)比較的結(jié)果,去除掉音頻信號的不相干部分以及統(tǒng)計冗余部分。這感知編碼一般情況下并不能完全恢復原始的音頻信號,故稱其為有損編碼或者有損壓縮。但是,如果控制得好的話,人耳是無法感覺到編碼信號質(zhì)量的下降的。例如在PCM中,所有的信號樣本都采用相同的字長來表示,而在感知編碼中,則采用的是自適應(yīng)量化的方法,即根據(jù)可聽度來分配所使用的字長。一般情況下,它會給重要的信號多分配一些bit來確保其可聽的完整性,相反對于那些不太重要的信號則分配較少的編碼bit,而對于那些人耳完全聽不到的信號則不進行編碼,通過這樣的方法可以大幅度地降低編碼后的比特速率。
MPEG-1音頻標準是高保真的音頻數(shù)據(jù)壓縮標準,它支持的采樣頻率為 32 kHz,44.1 kHz,48 kHz的單聲道以及雙聲道編碼的模式,此壓縮標準并且利用了心理聲學模型來控制音頻信號的量化和編碼。在MPEG-1壓縮標準中,規(guī)定了3種不同層次的音頻壓縮算法即:層1,層2和層3。
層l的算法比較簡單,計算復雜度低,精度不高,壓縮效率也低。層2的編碼算法比較復雜,但其精度比較高,而且能去除掉更多的冗余信息。適合應(yīng)用于高保真的壓縮編碼,例如MP3等。層3實際上就是現(xiàn)在流行的MP3音樂格式,其編碼算法最為復雜,因為其增加了一些不定長的編碼,例如霍夫曼編碼等一些比較先進的壓縮技術(shù),在MPEG-1壓縮標準中,層3的壓縮性能是最好的,可以在低碼率的情況下,實現(xiàn)最優(yōu)質(zhì)的聲音[4]。
MPEG-1音頻標準中采用了兩種頻域編碼器即:子帶編碼器和變換編碼器。子帶編碼器是采用有限個數(shù)量的子帶來處理時間上相鄰的取樣值,而變換編碼器則是使用很多的子帶來處理頻率上相鄰的取樣值。
當一個頻率聲音的能量低于某個值時人耳就聽不到,這個值是人耳的決定聽覺閾值,低于這個閾值,任何頻率的聲音是完全聽不到的。當一種聲音的存在在一定條件下回抑制人耳聽到另一種聲音,這種現(xiàn)象叫掩蔽效應(yīng),其強度與頻率和抑制信號的強度有關(guān)[5]。
1)聽覺閾值
由于人耳的聽覺系統(tǒng)對不同頻率信號的敏感程度都有很大的差別,一般對在2 kHz到4 kHz范圍區(qū)域內(nèi)的信號,人耳是最為敏感的,就算有幅度很低的信號都能夠被人耳所聽到。但是如果在低頻區(qū)和高頻區(qū),能被人耳聽到的信號幅度就會更高。
2)音頻信號的掩蔽效應(yīng)
如果一種音頻信號在人們的聽覺系統(tǒng)中阻礙了另一種頻率的聲音,把出現(xiàn)的這種現(xiàn)象就稱為掩蔽效應(yīng)。掩蔽效應(yīng)分為頻域掩蔽和時域掩蔽,當掩蔽信號覆蓋一定的頻率范圍時,當帶寬逐漸增大到某個值時,掩蔽效應(yīng)就不會隨著帶寬的增大而繼續(xù)改變,這個帶寬就是臨界頻帶。
對音頻信號進行量化和壓縮編碼等各種處理中,都充分利用了人耳的聽覺特性。 基于心理聲學模型的數(shù)字音頻處理技術(shù),使提高壓縮率的同時,主觀評定的音頻失真仍保持很小?;谛睦砺晫W模型的編碼器如圖1所示。
圖1 基于心理聲學模型的編碼器框圖Fig.1 Encoder based on psychoacoustic model diagram
為了應(yīng)用心理聲學模型,MPEG編碼方案中,采用均勻劃分頻帶的辦法,劃分子帶數(shù)為32,取樣頻率一般為44.1 kHz,為了實現(xiàn)心理聲學模擬,編碼器首先對輸入原始音頻信號進行FFT頻譜分析,然后利用FFT分析的輸出值確定臨界子帶帶寬、音調(diào)非音調(diào)成分、絕對聽覺閾值等,最后計算每個子帶的信號遮掩比,計算公式如下:
臨界子帶帶寬:
絕對聽覺閾值:
通過估計出各子帶的掩蔽閾值,然后計算得到信號的遮掩比,下一步,由掩蔽信號的頻率及給出的掩蔽函數(shù),確定各個掩蔽信號的掩蔽閾值。最后再由各個臨界頻帶的信號能量,減去該臨界頻帶的掩蔽閾值的最小值,兩者之差就為該臨界頻帶的信掩比SMR。利用心理聲學模型既降低了量化的碼率,又提高了音頻編碼的主觀質(zhì)量[7]。
MP3編碼算法是基于頻域的編碼范疇,MP3編碼流程大致分為時頻映射、心理聲學模型、量化編碼3大功能模塊,每個模塊的計算都十分復雜,實現(xiàn)MP3編碼的關(guān)鍵也在于這3個功能模塊。MP3編碼算法流程如圖1所示。
1)分析濾波器組
MP3是一種子帶編碼,使用的是一個32通道的偽標準正交鏡像濾波器組來完成這一功能的,當PCM信號輸入濾波器組后,就會被分解成32路等頻寬的子帶信號。每輸入32個PCM信號做一次濾波器組分析,就會輸出32路子帶信號。該濾波器組實際上是32個512階的FIR帶通濾波器,通帶頻率由低到高。分析濾波器組示意圖如圖2所示,
圖2 分析濾波器組示意圖Fig.2 Analysis of filter diagram
由以上式子可知,如果劃分的子帶比較合理,會使得Fk-1/Wk為整數(shù),上面式子的最小值的數(shù)值為2Wk,這樣子帶信號的取樣頻率就可以大大地減少,如果信號帶寬B被均勻的分成了M個子帶,則每個子帶寬度就為:
子帶的采樣頻率為:
x(n)對于第 k個輸出信號 yk(n)的采樣頻率 fsk的最小值是:
若取樣量化的比特數(shù)為n,則每個單子帶的傳輸碼流為:
由于總的傳輸碼率等于各個子帶傳輸碼率之和,所以總的傳輸碼率為:
計算出來的結(jié)果,剛好等于原來信號的傳輸碼率。
2)修正的離散余弦變換MDCT
由于音頻信號在處理的過程中都是逐段進行處理的,因此如何對信號進行截取,這是在MDCT變換中一個十分重要的問題。MP3編碼算法是通過對時域信號加三角窗對信號進行截取的。三角窗與矩形窗相比較,三角窗的缺點是其幅頻響應(yīng)的主瓣寬度較矩形窗寬;其優(yōu)點是旁瓣的幅度衰減速度比矩形窗快得多,窗口長度的選擇,主要取決于當前信號變化快慢的程度。當窗長度較長時,可以得到更高的頻域分辨率,如果窗長度較短時,則可以得到更高的時域分辨率。
MP3編碼算法標準中,總共提供了4種窗口的類型,分別是長窗,短窗,開始窗和終止窗),它們?nèi)际侨谴啊?/p>
1)非均勻量化
非均勻量化的基本思想就是按照輸入信號的大小,來確定量化間隔,如果輸入的信號比較大,就采用大的量化間隔,否則就采用小的量化間隔。
2)量化編碼
量化編碼模塊的主要任務(wù)就是把MDCT計算出來的頻譜值進行量化,并對其量化結(jié)果進行霍夫曼編碼。此模塊的量化是非均勻量化,所以需要在心理聲學模型的指導下,把量化噪聲盡量減小到各頻帶掩蔽門限之下,從而實現(xiàn)較小的信息損失。量化和編碼是通過一個嵌套了兩重循環(huán)的疊代循環(huán)來實現(xiàn)的。通過內(nèi)循環(huán)來完成對譜線的量化,并對計算出來的結(jié)果進行霍夫曼編碼。其量化公式如下所示:
其中,為了消弱某些噪聲,將輸入的頻域值|xr(i)|作 3/4次方運算,qstep代表量化階的大小,只取整數(shù)值。
如果任何一個條件不滿足,內(nèi)循環(huán)就把qstep增加1,然后重新量化,根據(jù)外循環(huán)和內(nèi)循環(huán)的量化結(jié)果,最后求出比例因子帶的量化失真度。
本中首先介紹了MPEG-1標準,詳細分析了MP3編碼算法壓縮標準的原理以及編碼的主要流程。深入的學習了MP3編碼的基礎(chǔ)知識,掌握了MP3的編碼算法理論,通過對其研究,發(fā)現(xiàn)如果對主要的心理聲學模型、量化模塊和分析濾波器組的算法進行創(chuàng)新的改進,最終MP3的編碼速度和質(zhì)量都會有較大的提高,MP3編碼器算法的改進和優(yōu)化將成為計算機科學領(lǐng)域中一個重要的研究方向。
[1]張琦.MPEG標準的發(fā)展[J].現(xiàn)代電聲技術(shù),2003(3):124-129.ZHANG Qi.The development of MPEG standard[J].Modern Electronic Technology,2003(3):124-129.
[2]謙君.3G移動語音編碼標準介紹[J].無線技術(shù),2006(9):97-98.QIAN Jun.Mobile 3G speech coding standard introduction[J].Wireless Technology,2006(9):97-98.
[3]李昌立,吳善培.數(shù)字語音——語音編碼實用教程[M].北京:人民郵電出版社,2004.
[4]Michael McCandless,The MP3 revolution[J].IEEE Intelligent Systems Archive,1999,14(3):8-9.
[5]豐帆.MP3數(shù)字音頻編解碼算法的研究及實現(xiàn)[J].西安電子科技大學,2008(1):3-5.FENG Fan.MP3 digital audio codec algorithm research and Realization[J].Xi’an Electronic and Science University,2008(1):3-5.
[6]張力光,王讓定.心理聲學模型及其在 MP3編碼中的應(yīng)用[J].寧波大學學報:理工版,2010,23(3):27-30.ZHANG Li-guang,WANG Rang-ding.Psychoacoustic model and its application in MP3 coding[J].Journal of Ningbo University:Science and Technology,2010,23(3):27-30.
[7]葉志陽.數(shù)字音頻壓縮技術(shù)與應(yīng)用[M].廣州:廣東電視臺制作部.