董石,胡瑞敏,楊玉紅,王曉晨,涂衛(wèi)平
(武漢大學(xué) 國家多媒體軟件工程技術(shù)研究中心,湖北 武漢 430079)
隨著三維影視市場的巨大成功,三維音頻技術(shù)受到了廣泛關(guān)注并得到了迅速發(fā)展。三維音頻系統(tǒng)因其能為觀眾提供更好的聲音定位和臨場感,越來越多被引入與音頻相關(guān)的應(yīng)用當(dāng)中取代傳統(tǒng)環(huán)繞聲系統(tǒng)。波場合成(WFS,wave field synthesis)、Ambisonics和幅度矢量合成(VBAP,vector based amplitude panning)是目前發(fā)展最為完備的3種多聲道三維音頻理論,其中WFS基于惠更斯原理重建原始聲場信號,德國Fraunhofer研究院的IDMT實驗室和法國 IRCAM 等研究機構(gòu)都開展了長期研究,并嘗試將 WFS應(yīng)用于劇場和音樂會的實時直播;Ambisonics利用球諧函數(shù)記錄聲場并驅(qū)動揚聲器。其有嚴(yán)格的揚聲器排布要求,能夠在揚聲器中心位置高質(zhì)量重建原始聲場;VBAP基于三維空間中的正弦法則,利用空間中3個臨近的揚聲器形成三維聲音矢量。由于算法簡單,VBAP也是最常用的多聲道三維音頻技術(shù)[1]。如日本NHK公司的22.2多聲道三維音頻系統(tǒng)正是利用VBAP技術(shù)進(jìn)行三維聲像的生成,2012年面向三維音頻的國際標(biāo)準(zhǔn)MPEG-H正在制定當(dāng)中,22.2多聲道三維音頻系統(tǒng)也被其作為標(biāo)準(zhǔn)系統(tǒng)。
未來三維音頻技術(shù)將逐漸走向成熟并取代現(xiàn)有的立體聲和環(huán)繞聲技術(shù)。當(dāng)前三維音頻系統(tǒng)的一個主要特點就是其龐大的聲道數(shù)目。例如 WFS一般包含了數(shù)十個甚至上百個聲道,22.2多聲道系統(tǒng)也有分3層排布的24個聲道,而Ambisonics系統(tǒng)雖然可以靈活地制定聲道數(shù)目,但由于較少的聲道數(shù)會嚴(yán)重影響三維音質(zhì),因此聲道數(shù)一般也有幾十個。相比于雙聲道立體聲和5.1環(huán)繞聲技術(shù),三維音頻技術(shù)中聲道數(shù)的增加帶來了數(shù)據(jù)量的激增。來自Fraunhofer的研究報告顯示,WFS用于實時傳輸時需要高達(dá)37 Mbit/s的碼率;而對于未壓縮的22.2多聲道系統(tǒng)也需要28 Mbit/s的碼率[2]。2011年,殷福亮等對三維音頻技術(shù)進(jìn)行了綜述,指出三維音頻巨大計算量和數(shù)據(jù)量是其發(fā)展的瓶頸問題[3]。目前的存儲介質(zhì)和傳輸帶寬難以滿足三維音頻龐大數(shù)據(jù)量的需求,因此三維音頻信號的壓縮技術(shù)將成為三維音頻領(lǐng)域的重要研究方向。
針對三維音頻數(shù)據(jù)量激增的問題,近期在三維音頻壓縮方面已經(jīng)展開了一些非常有價值的工作。2007年,Goodwin等提出了一種基于主成分分析的參數(shù)編碼多聲道壓縮框架[4],這種框架可以應(yīng)用于增強特殊的音頻場景信號并提高空間音頻編碼的頑健性。2008年,Cheng提出了一種空間壓縮環(huán)繞聲編碼(S3AC)方法,用于Ambisonics信號的參數(shù)編碼[5]。2009年,Hellerud使用聲道間預(yù)測編碼的方法去除Ambisonics聲道間的冗余信息[6],這種方法具有較低的算法延時,但是計算復(fù)雜度較高。2010年,Pinto利用時空域變換將WFS信號分解成平面波和瞬態(tài)波,通過舍棄瞬態(tài)波,并利用感知編碼對平面波信號進(jìn)行壓縮,來獲得編碼增益。由于其時空變換的精度取決于空間分辨率,也即 WFS聲道數(shù)目,所以編碼效率會隨著單位空間內(nèi)聲道數(shù)的增加而提高[7,8]。2011年,Cheng又進(jìn)一步提出了一種空間定位量化格點(SLQP,spatial localization quantization point)的參數(shù)編碼方法,并使用三維方位線索來壓縮VBAP信號[9]。由于提取了空間線索并通過下混技術(shù)減少了聲道數(shù)目,SLQP取得了較高的壓縮效率。
上述模型和參數(shù)編碼方法可以提供較高的壓縮比,但實際應(yīng)用中音頻編碼器要兼顧算法復(fù)雜度和編碼效率2個方面,而且參數(shù)編碼也只能在低碼率下提高編碼音質(zhì)。所以本文考慮高質(zhì)量/高比特率的應(yīng)用情況,并專注于傳統(tǒng)和差編碼方法(M/S,mid/side coding)。本文提出一種基于三聲道的M/S編碼方法(3D-M/S,three-channel dependent mid/side coding)和相應(yīng)框架,用于壓縮VBAP三維音頻系統(tǒng)和 22.2多聲道系統(tǒng)的音頻信號。首先分析了傳統(tǒng)M/S編碼技術(shù)的基本原理,并基于傳統(tǒng)方法原理提出新的變換矩陣,將傳統(tǒng)M/S編碼方法拓展到三維空間情況,實現(xiàn)三維空間中基本單元——三聲道的信號冗余去除。進(jìn)一步,提出一種基于三聲道組的三維音頻編解碼框架,使3D-M/S能夠壓縮任意聲道配置。最后,將所提算法和獨立聲道編碼(independent channel coding)、PCA 編碼(PCA,principal component analysis)在算法復(fù)雜度和客觀質(zhì)量上進(jìn)行了對比,實驗表明3D-M/S方法保留了傳統(tǒng)M/S編碼低復(fù)雜度、高效率的特點,適用于三維音頻直播通信傳輸?shù)男枨蟆?/p>
由J D Johnston提出的M/S編碼技術(shù)[10]被多種主流音頻壓縮標(biāo)準(zhǔn)采用,如 MPEG1-Audio Layer 3(MP3)和aacPlus (AAC+)。M/S編碼基于“立體聲2個聲道是強相關(guān)信號”的現(xiàn)象,不直接編碼原始雙聲道信號,而利用M/S變換將原始聲道轉(zhuǎn)換為和聲道與差聲道進(jìn)行編碼。由于差聲道信號動態(tài)范圍小于原始信號,編碼所需的比特數(shù)更少,因而獲得編碼增益。
本文通過立體聲正弦模型來說明 M/S的編碼過程,首先用矢量 V0=(CL,CR)來表示立體聲道信號
其中,S為虛擬聲源信號,θ為音源的方位角,代表音源能量分布于在2個聲道的增益因子,且θ∈[0,π/2]。M/S編碼的2個變換矩陣M0和M1為
實際編碼時CL和CR為子帶的能量值。當(dāng)2個聲道信號差異較大時,和差變換后差信號的能量依然較大,M/S編碼使用矩陣M0編碼原始信號;當(dāng)2個聲道非常相似時才會使用M/S編碼,因為變換為和差信號后會重新計算掩蔽閾值,增加編碼復(fù)雜度。如MP3標(biāo)準(zhǔn)中2個聲道信號滿足能量判別條件(3),即當(dāng)能量差異小于閾值Thr=2 dB時,才使用矩陣M1編碼進(jìn)行和差變換[10]。
為了方便討論矩陣切換,這里將判別條件表示為2個向量的距離。將 CL/CR=tan θ代入式(3)可得到
此處的Thrv是能量閾值Thr對應(yīng)的矢量距離閾值
式(5)即為能量判別條件的等價矢量表示,其表明只有輸入信號矢量V0與變換矩陣 M1的和矢量V1足夠接近時才使用和差變換矩陣。這個矢量表示對下節(jié)討論三維空間M/S編碼將會十分有用,因為三維空間M/S編碼存在多于一個的變換矩陣及其和矢量。
傳統(tǒng)立體聲和環(huán)繞聲系統(tǒng)中為了保證聲像的穩(wěn)定性,只用最鄰近的2個聲道形成一個有方向的聲像,所以2個鄰近的聲道具有最大相似性,因而M/S編碼和其他參數(shù)編碼也是基于 2個聲道單元去除冗余。
對于Ambisonics和VBAP等三維音頻系統(tǒng)(如圖 1所示),其聲道在三維空間中的球面上排布,具有三維特性,與立體聲和環(huán)繞聲有很大差異。首先,在球面排列的三維音頻系統(tǒng)中,三角形是能覆蓋三維空間中區(qū)域的最小組合,因此最少要使用 3個聲道才能在三維空間某一區(qū)域內(nèi)的任意位置形成聲像。其次,VBAP算法只用鄰近3個聲道(C1,C2,C3)形成一個虛擬聲像,這 3個聲道之間具有最大相關(guān)性。基于三維音頻的這種特點,本文提出一種基于三聲道的和差編碼算法(3D-M/S)編碼球面排布三維音頻信號。
圖1 VBAP系統(tǒng)在三維空間球面上的揚聲器排布
此處按照傳統(tǒng) M/S編碼算法對三聲道情況進(jìn)行討論,基于三維空間中正弦模型,VBAP三維音頻系統(tǒng)信號可表示為矢量 V0=(C1,C2,C3),其中
且θ,φ∈[0,π/2],它們確定了 3個聲道的增益因子和聲像位置。聲像位置可分為3種基本情況。第 1種情況,只通過一個聲道產(chǎn)生聲像,對應(yīng)于聲像正好定位于在某一個聲道所在位置,即球面三角形的頂點,此時和立體聲中僅使用一個聲道的情況相同,3個聲道信號完全不同,因此使用M0矩陣編碼原始聲道。第2種情況,只通過2個聲道產(chǎn)生聲像,此時對應(yīng)于虛擬聲源位于 2個聲道之間,即球面三角形的邊上。這種情況和傳統(tǒng)的立體聲相同,因此使用 M1矩陣編碼。但由于三聲道中有種兩聲道情況,M1變換矩陣需要相應(yīng)的拓展成3種變換矩陣,拓展方式如(8)中M1,M2和 M3所示遍歷所有種兩聲道情況。第3種情況,3個聲道都用于產(chǎn)生聲像。此時對應(yīng)于虛擬聲源位于 3個聲道之間,即球面三角里面。為了實現(xiàn)這種情況下聲道間冗余信息去除,需要依據(jù)傳統(tǒng)M/S編碼原理設(shè)計新的變換矩陣M4。其第一個矢量是和矢量,其余矢量與和矢量正交且相互正交,保證其余2個聲道將變換為差聲道。
3D-M/S編碼的矩陣判別條件和傳統(tǒng)M/S編碼采用相同的方法設(shè)計:當(dāng)3個聲道中有且僅有2個聲道滿足傳統(tǒng)M/S編碼切換條件時,選擇M1,M2,M3中和矢量與輸入矢量距離最近的矩陣,得到一個能量較小的差聲道;當(dāng)3個聲道中所有聲道之間均滿足傳統(tǒng)M/S編碼切換條件時,表明3個聲道差異很小。此時采用變換矩陣 M4,得到 2個能量較小的差聲道。利用矢量距離的方式,上述3D-M/S編碼切換條件可以表示為
3D-M/S編碼只適用于三聲道情況,實際三維音頻系統(tǒng)都包含更多聲道數(shù)目。球面排布三維音頻系統(tǒng)的多聲道配置可歸納為圖2所示的拓?fù)浣Y(jié)構(gòu),每一個聲道Ci對應(yīng)一個揚聲器。
圖2 三維音頻系統(tǒng)中多聲道排布的一般情況
為了讓3D-M/S編碼能夠去除多聲道信號冗余,本文提出一種三維音頻編碼框架如圖3所示,其中CM為和聲道,CS和CT分別是第2個和第3個差聲道。該框架對拓?fù)浣Y(jié)構(gòu)中聲道按三角形逐個處理,直到所有的聲道都被編碼完為止。每個3D-M/S編碼單元和前一個單元共用 2個聲道,即每個單元只加入一個新的聲道。除第一個編碼單元外,其他單元只將3D-M/S變換后第3個差聲道CT送入核心編碼器,保證了編碼聲道數(shù)和原始輸入聲道數(shù)完全一致。由于 3D-M/S變換矩陣均為正交矩陣,在解碼端3D-M/S解碼單元通過解碼出的聲道CT和前一單元的 2個聲道,可以還原出原始聲道信號。當(dāng)變換矩陣為M0時,CT為原始聲道,當(dāng)變換矩陣為M1、M2、M3、M4時,CT為差聲道,與編碼原始聲道相比,整個框架通過編碼差聲道獲得編碼增益。
圖3 針對多聲道的3D-M/S編解碼框架
PCA是理論上最好的去相關(guān)變換算法,因此本文選取了3D-M/S、PCA和獨立聲道編碼3種編碼方法,分別在比特率、復(fù)雜度、客觀音質(zhì)上進(jìn)行對比。復(fù)雜度通過各編碼器在PC(CPU: Intel Core2 Duo P86002.53 GHz,RAM:8 GB)上的運行時間來衡量;客觀音質(zhì)則使用分幀信噪比和ITU標(biāo)準(zhǔn)推薦的客觀質(zhì)量ODG評分來衡量[11]。實驗采用圖2所示的五聲道配置(C1,C2,C3,C4,C5)。測試所用的三維音頻信號為合成的 VBAP信號,該信號使用 3個MPEG測試序列(es01語音,sc03交響樂,si02響板,48 kHz采樣)作為虛擬音源,虛擬聲源的定位依據(jù)VBAP算法實現(xiàn)。由于實驗中無法涵蓋虛擬聲源的所有可能位置,因此實驗采用空間中3種代表性的聲源位置:聲源在三角形中從一個頂點移動到另一個頂點,從一個頂點移動到對邊,以及從一條邊移動到另一條邊,如圖2箭頭方向所示。
本文算法基于開源AAC編碼器FAAC-1.28實現(xiàn),解碼器基于對應(yīng)的 FAAD2-2.7實現(xiàn)。與傳統(tǒng)M/S編碼相同,編碼器在頻域上按個子帶進(jìn)行3D-M/S和PCA編碼。為了便于碼率分析和算法實現(xiàn),核心編碼器關(guān)閉了長短窗切換,只采用固定的長窗。這會同等程度降低各種對比算法的信噪比,但結(jié)果不失一般性;為了避免FAAC動態(tài)帶寬設(shè)置功能帶來的影響,實驗中采用固定編碼帶寬12 kHz和35個均勻子帶。
獨立聲道編碼:聲道送入核心編碼器單獨編碼。
3D-M/S編碼器:通過原AAC編碼器已有的子帶能量進(jìn)行矩陣判別并進(jìn)行矩陣變換,一個子帶的變換矩陣索引使用3 bit來量化。
PCA編碼器:計算每個編碼單元信號的特征向量,并通過特征向量將三聲道子帶轉(zhuǎn)化為去相關(guān)后的主要成分和次要成分,然后送入核心編碼器。遵循已有PCA多聲道編碼算法[12],每個子帶用24 bit量化協(xié)方差矩陣,最后傳遞到解碼端重建特征向量并將主次成分還原為原始聲道。
圖4顯示了3種編碼方法對聲像移動的聲道編碼后的分幀信噪比值。聲源1 位置移動的時間范圍從1~400幀,聲源2位置移動的時間范圍從400~800幀,聲源3位置移動的時間范圍從800幀到最后一幀。首先,圖中所有的信噪比曲線都呈下降趨勢,這是因為瞬態(tài)信號和交響樂具有更加豐富的信息頻譜細(xì)節(jié),使得它們更難被壓縮。其次,當(dāng)虛擬聲源位置接近 2個聲道間時(200幀 C1、C2之間,400~800幀C4、C5之間),3D-M/S比聲道獨立編碼的方法具有更高的信噪比。特別是在接近600幀時,3個聲道幾乎完全相同,此時通過變換矩陣M4可以最大程度地去除冗余,2個差聲道能量幾乎為零??梢员A舾啾忍財?shù)編碼和聲道,因此此時3D-M/S的效果優(yōu)于PCA方法。
圖4 3種方法在虛擬音源位置移動下的分幀信噪比
表1顯示每種方法所用的比特數(shù)和復(fù)雜度。3種方法采用大致相同的碼率進(jìn)行編碼以進(jìn)行對比,ODG分?jǐn)?shù)由整個信號計算所得。數(shù)據(jù)表明PCA和3D-M/S都獲得了約0.66 ODG分的改善,但是PCA算法涉及協(xié)方差矩陣計算,復(fù)雜度提高了 29.9%。而3D-M/S只進(jìn)行矩陣變換,所以復(fù)雜度僅提高了11.3%,是PCA方法的37.8%。并且PCA的參數(shù)碼率為每聲道 39.3 kbit/s遠(yuǎn)高于3D-M/S每聲道的4.9 kbit/s。這種高參數(shù)碼率在3個聲道不相關(guān)(比如聲道記錄不同內(nèi)容,聲道間信號冗余非常小)情況下,核心編碼器無法獲得編碼增益,高參數(shù)碼率反而導(dǎo)致編碼效率下降。但3D-M/S參數(shù)碼率僅為每聲道4.9 kbit/s,在其主要應(yīng)用場景的高碼率下,其編碼效率不會明顯降低。
表1 3種方法的ODG質(zhì)量、比特率、時間復(fù)雜度
本文針對多聲道三維音頻系統(tǒng)提出了一種拓展和差編碼技術(shù),將傳統(tǒng)基于聲道對的M/S編碼方法拓展為基于三聲道的3D-M/S編碼,并繼承了傳統(tǒng) M/S編碼低復(fù)雜度的特點。對于 VBAP和Ambisonics等球面排列的三維音頻系統(tǒng),空間中三聲道是形成聲像和冗余存在的最小單元,因此3D-M/S更符合三維音頻的空間結(jié)構(gòu)。結(jié)合所提編碼框架,3D-M/S可以進(jìn)一步對3個聲道以上的三維音頻系統(tǒng)進(jìn)行壓縮編碼。實驗表明,與 PCA編碼和獨立編碼相比,3D-M/S在保持較低復(fù)雜度的同時提供了相當(dāng)?shù)膲嚎s效率??紤]到三維音頻技術(shù)的快速發(fā)展及其直播通信中終端處理能力,在實際應(yīng)用中低復(fù)雜度的音頻編碼技術(shù)會更有應(yīng)用前景。
[1]COOPERSTOCK J R. Multimodal telepresence systems[J]. IEEE Signal Processing Magazine,2011,28(1):77-86.
[2]SAKAIDA S,IGUCHI K,NAKAJIMA N,et al. The super hi-vision codec[A]. IEEE International Conference on Image Processing[C].San Antonio,TX,2007.21-24.
[3]YIN F,WANG L,CHEN Z. Review on 3D audio technology[J]. Journal on Communications,2011,32(2):130-138.
[4]GOODWIN M M,JOT J. Primary-ambient signal decomposition and vector-based localization for spatial audio coding and enhancement[A]. IEEE International Conference on Acoustics,Speech and Signal Processing[C]. Honolulu,HI,2007.9-12.
[5]CHENG B,RITZ C,BURNETT I. A spatial squeezing approach to ambisonic audio compression[A]. IEEE International Conference on Acoustics,Speech and Signal Processing[C]. Las Vegas,NV,2008.369-372.
[6]HELLERUD E,SOLVANG A,SVENSSON U P. Spatial redundancy in higher order ambisonics and its use for low delay lossless compression[A]. IEEE International Conference on Acoustics,Speech and Signal Processing[C]. Taipei,China,2009.269-272.
[7]PINTO F,VETTERLI M. Wave field coding in the spacetime frequency domain[A]. IEEE International Conference on Acoustics,Speech and Signal Processing[C]. Las Vegas,NV,2008.365-368.
[8]PINTO F.,VETTERLI M. Space-time-frequency processing of acoustic wave fields: theory,algorithms,and applications[J]. Signal Pro-cessing,IEEE Transactions on,2010,58(9): 4608-4620.
[9]CHENG B,Spatial Squeezing Techniques for Low Bit-Rate Multichannel Audio Coding[D]. University of Wollongong,2011.
[10]JOHNSTON J,FERREIRA A J. Sum-difference stereo transform coding[A]. IEEE International Conference on Acoustics,Speech and Signal Processing[C]. San Francisco,CA,1992.569-572.
[11]ITU-R. BS Recommendation 1387-1.Method for Objective Measurements of Perceived Audio Quality[S]. 1998.
[12]DAI Y,HONGMEI A,KYRIAKAKIS C,et al. High-fidelity multichannel audio coding with Karhunen-Loevetransform[J]. IEEE Transactions on Speech and Audio Processing,2003,11(4):365-380.