專利名稱:多聲道數(shù)字音頻信號的壓縮編碼和解碼設(shè)備及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字音頻信號的編碼/解碼設(shè)備及其方法,更確切地說,是關(guān)于對多聲道數(shù)字音頻信號進行壓縮編碼/解碼的設(shè)備及方法。
背景技術(shù):
多聲道(包括立體聲)數(shù)字音頻壓縮編碼技術(shù)已被廣泛應(yīng)用于VCD,SVCD,DVD,衛(wèi)星電視,數(shù)字電視,和互聯(lián)網(wǎng)(Internet)等領(lǐng)域中。它要解決的主要問題是用于表達多聲道數(shù)字音頻信號的碼率很高,但可用于傳播或儲存它的信道容量卻非常有限。例如,用PCM來表達48kHz采樣率每個樣本24比特的5.1聲道的環(huán)繞聲需要6912kbps(千比特/秒)的碼率,而如數(shù)字電視之類的信道容量比較有限的應(yīng)用可分配給數(shù)字音頻信號的碼率一般為384kbps,即使是DVD這樣的信道容量比較寬松的應(yīng)用可分配給數(shù)字音頻信號的碼率也一般為384kbps,768kbps,和1536kbps。在此,數(shù)字音頻壓縮編碼技術(shù)需要提供高達18倍的壓縮比。
數(shù)字音頻壓縮編碼技術(shù)的研究開發(fā)可以追溯到70年代早期。經(jīng)過三十年的發(fā)展,目前廣泛采用的技術(shù)框架已基本定型為幀長選擇器,頻率或子帶分解器,暫態(tài)檢測器,線性預(yù)測器,比特分配器,量化器,熵編碼器,和多路復(fù)用器。
例如,MPEG 2 AAC[參考文獻1]和MPEG 4 AAC[參考文獻2]技術(shù)把輸入音頻PCM信號流分成1024個樣本一幀,然后對每幀信號作暫態(tài)檢測。如果未發(fā)現(xiàn)本幀樣本中有暫態(tài)響應(yīng),則(可選擇地)作長期線性預(yù)測,然后作1024個子帶的頻率分解,再(可選擇地)對每個子代信號作短期線性預(yù)測。如果發(fā)現(xiàn)有暫態(tài)響應(yīng),則進一步把本幀的1024個樣本分成8個子幀,每幀128個樣本,然后作128個子帶的頻率分解,并把暫態(tài)響應(yīng)所在的那些子幀的位置傳送給多路復(fù)用器。隨后作基于人耳聽覺模型的全局比特分配器,對子帶信號作非線性標量量化,和對量化指數(shù)作哈夫曼(Huffman)編碼。最后,多路復(fù)用器把以上各步驟所產(chǎn)生的輔助信息和表達各個子帶樣本的哈夫曼碼打包成一個完整的以幀為單位的壓縮碼流。AAC的優(yōu)點是壓縮效率高。但編碼器和解碼器復(fù)雜,解碼后的音頻信號的音質(zhì)不完全透明。
再例如,DTS的多聲道音頻編碼器[參考文獻3,4和5]的幀長選擇器可根據(jù)采樣率和碼率從256,512,1024,2048,和4096中選一個幀長,并按此幀長把輸入音頻PCM信號流分成幀。隨后作32個子帶的頻率分解,再對每個子帶信號作子帶編碼。子帶編碼包括暫態(tài)檢測,線性預(yù)測,基于人耳聽覺模型的全局比特分配器,標量/矢量量化,和哈夫曼(Huffman)編碼。最后,多路復(fù)用器把以上各步驟所產(chǎn)生的輔助信息和表達各個子帶樣本的量化指數(shù)或哈夫曼碼打包成一個完整的以幀為單位的壓縮碼流。DTS的優(yōu)點是解碼后的音頻信號的音質(zhì)好,在高碼率(如1536kbps)時被很多人認為完全透明。但它的壓縮效率不高。
隨著數(shù)字電視近幾年在歐州和北美的商業(yè)廣播,多聲道音頻節(jié)目作為電視伴音的配送成為一個迫切需要解決的問題。這里涉及到的一個主要問題是目前的電視臺和錄音棚的設(shè)施僅僅支持立體聲。把它們改成多聲道意味著更換與音頻相關(guān)的幾乎全部設(shè)備。把多聲道節(jié)目壓縮到立體聲能支持的碼率即可避免這個問題。對多聲道節(jié)目壓縮后也有利于各個電視臺和錄音棚之間傳輸和分享節(jié)目。但壓縮后的音頻碼流引入了幀的結(jié)構(gòu)。如果音頻幀的長度與視頻幀的不等,在對視頻碼流在其幀的邊界上作剪輯時就會切到音頻幀的內(nèi)部,從而破壞音頻幀的結(jié)構(gòu),使解碼器出錯。另外,在多聲道節(jié)目的制作和配送過程中往往需要對其進行多次的編碼和解碼(縱列編碼Tandem Coding)操作。這要求壓縮技術(shù)必須能經(jīng)得起至少十次以上的縱列編碼而聽不到失真。
Dolby E是一個專為以上應(yīng)用而設(shè)計的音頻壓縮編碼技術(shù)[參考文獻6]。它的幀長度固定為1792,但它用采樣率變換的方法來使一幀Dolby E的數(shù)據(jù)流所占的時間與各種通用的視頻幀頻率(NTSC,PAL,和電影)的幀長度相等以達到能與它們同步剪輯的目的。同時,它又用高碼率來確保能經(jīng)得起十次以上的縱列編碼而聽不到失真。但是,Dolby E的壓縮效率不高,不適合作為把多聲道節(jié)目傳輸?shù)阶罱K用戶(如電視機)的壓縮技術(shù)。因此,電視臺在用Dolby E制作好節(jié)目后還得解碼成PCM,然后再編碼成AC-3[參考文獻7]或MPEG之類的高壓縮效率的編碼技術(shù)的碼流后才能發(fā)射出去。圖1示出采用Dolby E作節(jié)目配送的壓縮編碼技術(shù),AC-3作節(jié)目傳輸?shù)膲嚎s編碼技術(shù)的電視臺配送和傳輸音頻節(jié)目的過程。從中可以看出,這個電視臺法方案存在以下幾個困難1)音頻信號的失真大Dolby E本身的采樣率轉(zhuǎn)換引入失真,從Dolby E格式的碼流到AC-3格式的碼流的轉(zhuǎn)移編碼(Transcoding)又引入新的失真。2)已發(fā)射過的節(jié)目很難再用如圖1所示,如果要再用已發(fā)射過的節(jié)目,它必須被解碼成PCM再經(jīng)Dolby E編碼后才能與其他節(jié)目(如廣告等)切換。在發(fā)射時還得重新經(jīng)過從Dolby E解碼到AC-3編碼的轉(zhuǎn)移編碼過程。由于作最終傳輸?shù)拇a率一般不高,已發(fā)射過的節(jié)目在經(jīng)過以上這一串(AC-3解碼->Dolby E編碼->Dolby E解碼->AC-3編碼)轉(zhuǎn)移編碼后的音質(zhì)很難或無法保證。3)由于Dolby E的輸入和輸出的采樣率沒有簡單的倍頻關(guān)系,其編碼和解碼器都很復(fù)雜昂貴。
發(fā)明內(nèi)容
本發(fā)明的第一方面,提供一種高效高保真的對多聲道(包括單聲道)音頻信號進行壓縮編碼的編碼器及其編碼方法。當該音頻信號作為視頻信號的伴音時,該方法既能滿足配送多聲道數(shù)字音頻節(jié)目的要求,也能滿足以中低碼率傳播多聲道數(shù)字音頻節(jié)目的要求(壓縮效率高)。也即,它實現(xiàn)了Dolby E和其它傳輸壓縮編碼技術(shù)如AC-3加起來的功能。
本發(fā)明在該方面的編碼器包括1)幀長選擇器,用于根據(jù)音頻信號的采樣率,碼率,和視頻幀頻率(當多聲道音頻信號作為視頻信號的伴音時)選擇音頻幀長;2)子帶分解濾波器組,用于將一幀一幀輸入的音頻信號分解成多個子帶信號;3)暫態(tài)檢測器,用于將輸入的子帶信號分成暫態(tài)段與穩(wěn)態(tài)段;4)比特分配器,用于將由目標碼率所決定的比特資源分配到各個子帶段;5)子帶量化器,用于對所述的子帶信號以段為單位量化;6)多路復(fù)用器(MUX),用于將子帶的量化指數(shù)以及相關(guān)的輔助信息多路復(fù)用打包成一個以幀為單位的完整的碼流。
本發(fā)明在該方面的編碼方法包括1)根據(jù)音頻信號的采樣率,碼率,和視頻幀頻率(當多聲道音頻信號作為視頻信號的伴音時)選擇音頻幀長;2)通過子帶分解濾波器組將一幀一幀輸入的音頻信號分解成多個子帶信號;3)將各個子帶信號分成暫態(tài)段與穩(wěn)態(tài)段;4)將由目標碼率所決定的比特資源分配到各個子帶段;5)對所述的子帶信號以段為單位量化;6)將子帶信號的量化指數(shù)以及相關(guān)的輔助信息多路復(fù)用打包成一個以幀為單位的完整的碼流。
本發(fā)明的第二方面,提供一種對由上述編碼器按上述編碼方法編碼形成的音頻碼流進行解碼的解碼器及其解碼方法。其中該解碼器包括1)多路分解器(DEMUX),用于從上述編碼的碼流中多路分解出子帶信號的量化指數(shù)以及相關(guān)的如音頻幀長,子帶段邊界,和比特分配等輔助信息;2)子帶逆量化器,用于依據(jù)相關(guān)的輔助信息以段為單位由子帶信號的量化指數(shù)重建子帶信號;3)子帶合成濾波器組,用于由子帶信號重建音頻信號。
本發(fā)明在該方面的解碼方法包括1)從上述音頻編碼的碼流中多路分解出子帶信號的量化指數(shù)以及相關(guān)的輔助信息;2)依據(jù)相關(guān)的輔助信息以段為單位由子帶信號的量化指數(shù)重建子帶信號;3)用子帶合成濾波器組由子帶信號重建音頻信號。
當多聲道音頻信號作為視頻信號的伴音時,本發(fā)明選擇的音頻幀長與視頻幀長有簡單的倍數(shù)關(guān)系或者視頻幀長是音頻幀長的正整數(shù)倍,或者音頻幀長是視頻幀長的整數(shù)倍。這樣,本發(fā)明產(chǎn)生的碼流可以與視頻節(jié)目同步剪輯。
更進一步,當多聲道音頻信號作為視頻信號的伴音時,本發(fā)明選擇的子帶濾波器組的子帶數(shù)是不同視頻幀頻(PAL和電影)所對應(yīng)的不同音頻幀長的公因子。這樣,當視頻節(jié)目的幀頻發(fā)生變化時,本發(fā)明的編碼器和解碼器只須改變音頻幀長與這個公因子的倍數(shù),而不是子帶數(shù),即可維持音頻幀長與視頻幀長的前述倍數(shù)關(guān)系,以維持與視頻節(jié)目的同步剪輯能力。由于子帶數(shù)未變,編碼器和解碼器的各個延遲線也不用改變,因而編碼器和解碼器不用復(fù)位即可適應(yīng)視頻節(jié)目的幀頻的變化。
以上對子帶數(shù)和幀長度的限制并不妨礙本發(fā)明有一個很短的幀長度以提供一個低延遲工作模式。
本發(fā)明的子帶分解器與合成器所采用的濾波器較長以保證在對經(jīng)本發(fā)明壓縮編碼后的數(shù)據(jù)流在幀的邊界上作剪輯后能保持解碼后的音頻信號平滑過渡。
本發(fā)明的編碼系統(tǒng)的暫態(tài)檢測器把輸入子帶信號分割成暫態(tài)和平穩(wěn)片段。它有很高的時間分辨率,以減小音頻壓縮編碼常碰到的前向回聲(Pre-echo)效應(yīng)。本發(fā)明隨后的各個部件對輸入音頻信號的處理都以片段為單位進行。
本發(fā)明利用跨聲道的音頻信號在同一子帶(頻率)上的相關(guān)性來作長期和短期預(yù)測。這樣既可充分地利用音頻信號的周期性及聲道之間的相關(guān)性,又可采用低階數(shù)的預(yù)測器以降低運算量。
本發(fā)明的比特分配器只非常有限地利用了人耳聽覺模型以達到簡化比特分配的目的。這樣既可極大的減小比特分配的計算復(fù)雜度,還可僅僅用一個參數(shù)來表達比特分配的結(jié)果。解碼器在接收到這個參數(shù)后即可根據(jù)它而很簡單地準確重建編碼器用的比特分配。這樣就節(jié)省掉了其他技術(shù)用于傳送比特分配的比特資源。由于這個節(jié)省,用這種方法為編碼效率帶來的改善很可能能與用很復(fù)雜的人耳聽覺模型的媲美。
在量化方面,本專利采用的策略是在量化級少時用矢量量化,量化級多時用標量量化,以達到優(yōu)化壓縮效率,解碼復(fù)雜度和對記憶單元的需求的目的。
圖1采用Dolby的音頻壓縮技術(shù)的數(shù)字電視節(jié)目的配送和傳輸方案。
圖2第一實施例的編碼器。
圖3本發(fā)明暫態(tài)檢測示意圖。
圖4第二實施例的編碼器。
圖5人耳在安靜環(huán)境下的聽覺門限(Threshold in Quite)。
圖6第三實施例的編碼器。
圖7第四實施例的編碼器。
圖8本聲道線性預(yù)測與預(yù)測誤差信號的量化。
圖9跨聲道線性預(yù)測與預(yù)測誤差信號的量化。
圖10本聲道與跨聲道線性預(yù)測并用,以及預(yù)測誤差信號的量化。
圖11編碼流程圖。
圖12解碼流程圖。
圖13解碼器。
圖14采用本聲道線性預(yù)測時子帶樣本的重建過程。
圖15采用跨聲道線性預(yù)測時子帶樣本的重建過程。
圖16本聲道和跨聲道線性預(yù)測并用時子帶樣本的重建過程。
圖17采用本發(fā)明的編碼器和解碼器的數(shù)字電視節(jié)目的配送和傳輸示意圖。
具體實施例方式
本發(fā)明的編碼及解碼方法對各個聲道的處理幾乎是完全分離和相同的,因此以下對本發(fā)明的描述都基于一個聲道,除非另外說明。
編碼[實施例1]如圖2所示,本發(fā)明的編碼器由幀長選擇器1,濾波器組2、暫態(tài)檢測器3、比特分配器4,子帶量化器5,以及多路復(fù)用器6構(gòu)成,用于對輸入的音頻信號進行壓縮編碼。該音頻信號可以是數(shù)字電視的伴音信號。以下通過對各組件的詳細描述來說明編碼器的工作原理。
幀長選擇器1幀長選擇器1的作用是把輸入的音頻信號按照一定的幀長分成幀。至于幀長的選擇,一般認為幀長越大,編碼壓縮效率越高,但編碼延遲越大,編碼器和解碼器對記憶單元的需求量也越大。因此,碼率高時一般選用小一些的幀長,碼率低時一般選用大一些的幀長。由于編碼延遲與幀長和采樣率的乘積成正比,在選擇幀長時一定得考慮采樣率。
當音頻信號是視頻信號的伴音時,在選擇幀長時除了要考慮以上因素外,還得考慮作為視頻信號的伴音的一些特殊要求。這些特殊要求中最突出的,同時也是本發(fā)明要解決的問題之一,是被壓縮后的音頻碼流能與視頻信號作同步剪輯。本發(fā)明用“同步剪輯”來指被壓縮后的音頻碼流與視頻碼流的合理剪輯點在時間上完全同步,以使得在它們的任何一個剪輯點同時對音視頻碼流作剪輯后,音視頻碼流都不出錯,并且解碼后的音視頻信號在剪輯點都能平滑過渡。
實現(xiàn)同步剪輯的基本要求是一幀音頻碼流所占的時間必須與一幀視頻碼流所占的時間有一個簡單的倍數(shù)關(guān)系。否則,在視頻幀的邊界上剪輯視頻碼流時就會剪在音頻幀的內(nèi)部,破壞音頻幀的結(jié)構(gòu),引起解碼器出錯。我們考慮兩種情況。第一種為視頻幀長是音頻幀長的整數(shù)倍或相等的情況。此時可在每個視頻幀的邊界上作剪輯,而此剪輯點總會落在音頻幀的邊界上。
對于25幀/秒(PAL)的視頻信號,其每幀所占的時間為0.04秒。相對于以48000kHz采樣的音頻信號,它相當于1920個樣本。由于1920=3×5×27,這些因子的任何組合而形成的音頻幀長都可與25幀/秒的視頻信號做同步編輯。
對于24幀/秒(電影)的視頻信號,與其對等的一幀音頻信號(48000kHz采樣率)的樣本數(shù)為2000=24×53。同理,由這些因子組合而形成的音頻幀長都可與視頻信號做同步剪輯。
對音頻幀長度選擇的另一個限制是它必須是后面將要經(jīng)歷的子帶濾波器組的子帶數(shù)的整數(shù)倍。如果從1920和2000的最大公因子24×5中選一些組合作為子帶數(shù),我們則可在不變動子帶數(shù)的條件下實現(xiàn)與24幀/秒和25幀/秒這兩種視頻信號的同步編輯。在子帶濾波器組的描述中將對此做進一步的描述。
現(xiàn)在考慮第二種情況,即音頻幀長是視頻幀長的整數(shù)倍(如V倍)的情況。為了確保音頻幀的完整性,必須每隔V個視頻幀才有一個音頻信號的剪輯點。被壓縮過的視頻碼流往往要隔好幾幀才會有一個剪輯點,而這個間隔還可能是動態(tài)的。假定這個動態(tài)間隔的最大值為W,則能同時滿足視頻和音頻剪輯限制的最大剪輯間隔為WV個視頻幀。這顯然需要很大的存儲量。但是,前面所描述的方法任然適用。
子帶分解濾波器組2
子帶分解濾波器組2用于把由幀長選擇器1傳過來的音頻信號分解成M個子帶信號。在這里可以采用各種各樣的濾波器組[參考文獻8],包括但不限于完美重建和非完美重建濾波器組,正交和非正交濾波器組,樹狀濾波器組,余弦調(diào)制的濾波器組,子波包等。為了保證在對經(jīng)本發(fā)明編碼的碼流進行剪輯后音頻信號的平滑性,特別推薦使用重疊較長的濾波器組。
由于運算量低和設(shè)計簡單,余弦調(diào)制的濾波器組是本發(fā)明優(yōu)選濾波器組。它的第k個子帶濾波器為[參考文獻8]hk(n)=2p0(n)cos(πM(k+0.5)(n-N2)+λk)---(1)]]>其中n為樣本指數(shù),k為子帶指數(shù),M為子帶數(shù),p0(·)為原型濾波器,N為原型濾器的長度,λk=(-1)kπ4.]]>本發(fā)明對濾波器組2的子帶數(shù)M有一定的限制,其原則是子帶數(shù)M必須是對應(yīng)不同的視頻幀頻率由幀長選擇器1選擇的音頻幀長的一個公因子。也即,所有的可用的音頻幀長都可由以下公式表達Fsize=k*M (2)其中Fsize為音頻幀長,k一個正整數(shù)。這樣,當視頻的幀頻發(fā)生變化時,幀長選擇器1只需選擇另一個k,就可在保持子帶數(shù)M不變的條件下,選擇一個與新的視頻幀頻對應(yīng)的音頻幀長。保持子帶數(shù)不變就意味著編碼器和解碼器的各種延遲線不變。當視頻信號的幀頻率變化時,編碼器和解碼器都不需復(fù)位,只用對上式中的k作相應(yīng)調(diào)整即能平穩(wěn)地適應(yīng)這個變化。
例如,在描述幀長選擇器1時已提到,對于以48kHz采樣的音頻信號,2000可作為相對于24幀/秒的視頻信號的音頻幀長,1920可作為相對于25幀/秒的視頻信號的音頻幀長。如果選擇子帶數(shù)M為2000和1920的最大公因子80,則只須選擇k=25和24即可在保持子帶數(shù)不變的條件下分別實現(xiàn)2000和1920的音頻幀長。當然,其它公因子,如40和20等,都可達到同樣的效果。表1列出了本發(fā)明優(yōu)選的音頻幀長及濾波器組的子帶數(shù)表1
上表中的短幀長,如200,240,400,480等,很顯然為本音頻壓縮方法提供了低延遲模式。因此,本發(fā)明對音頻幀長及子帶數(shù)的限制并不防礙本發(fā)明擁有低延遲模式。
暫態(tài)檢測器3從子帶分解濾波器組2輸出的子帶信號隨即進入暫態(tài)檢測器3。暫態(tài)檢測器3依據(jù)一定的檢測尺度來分析每幀子帶信號的暫態(tài)情況,然后把一幀子帶信號進一步分割成暫態(tài)段和穩(wěn)態(tài)段,并輸出每段的位置信息。需要特別強調(diào)的是,這些段位置自適應(yīng)地隨暫態(tài)情況而變化。本發(fā)明對子帶信號的后續(xù)處理以段(以下稱子帶段)為基本單位。
以圖3所示的子帶信號為例,檢測器3會判斷A為穩(wěn)態(tài)段,B為暫態(tài)段,C為穩(wěn)態(tài)段,并輸出每段的位置信息如段長30,20,和50。
用于暫態(tài)檢測的尺度包括但不限于子帶信號的能量,能量的對數(shù),能量熵等。檢測技術(shù)可以是簡單的門限檢測,也可以是一些很復(fù)雜的技術(shù),包括但不限于著名的K-Means算法[參考文獻8]。
比特分配器4比特分配器4可以用本技術(shù)領(lǐng)域常用的方法依據(jù)信噪比(SNR)或信號對遮蓋比(SMR)為每個聲道的每個子帶段分配比特[參考文獻1-9]。比特分配的結(jié)果為用于量化每個聲道的每個子帶段的每個子帶樣本的比特數(shù)。此結(jié)果被送給子帶量化器5和多路復(fù)用器6。
子帶量化器5子帶量化器5包括一組多個擁有不同量化方式和量化級數(shù)的量化器[參考文獻9]。這組量化器的選擇與配置對壓縮效率影響很大。由于量化指數(shù)的概率分布不均勻(尤其是在量化級少時),故一般壓縮技術(shù)多采用標量量化加商編碼(如Huffman碼)的方法。但熵編碼的解碼方法復(fù)雜,運算量大而且不均勻,為解碼器的商業(yè)實現(xiàn)帶來了不少困難。
為此,本發(fā)明優(yōu)選地采用在量化級少時用矢量量化,量化級多時用標量量化。
子帶量化器5依據(jù)比特分配的結(jié)果來為每個子帶段從上述量化器組中選取一個具體的量化器,并以此量化器量化該子帶段內(nèi)的每一個子帶樣本。
對每個子帶段內(nèi)的每個子帶樣本的量化過程分以下四步(圖2)
1)估計比例因子比例因子估計器51可以用該子帶段的所有樣本的絕對值的最大值,該子帶段的所有樣本的方差,或其它變量作為比例因子。
2)量化比例因子比例因子本身也需要量化以便傳送給解碼器。由于人耳對音量的敏感度隨音量增大而減小,故對比例因子的量化應(yīng)采用非線性方式,如對數(shù)量化。以方差為例,設(shè)第c個聲道第k個子帶的第d個段的方差為σ(c,k,d),則比例因子量化器52為該比例因子選的的量化指數(shù)為s(c,k,d)=logσ(c,k,d)α,----(2)]]>其中α為量化步長。
3)歸一化子帶樣本子帶樣本歸一化器53用量化后重建的比例因子對該子帶段內(nèi)的所有樣本歸一化。
4)量化子帶樣本量化器選取器54依據(jù)比特分配器4送來的比特數(shù)選取具體的量化器,然后子帶樣本量化器55用它對歸一化后的子帶樣本進行量化以得到每個樣本的量化指數(shù)。
多路每用器(MUX)6多路復(fù)用器6把以上各個編碼器部件所產(chǎn)生的以下信息打包在一起以形成一個完整的比特流或碼流。
幀長選擇器1選擇的音頻幀長。
暫態(tài)檢測器3輸出的段位置信息。
比特分配器4為每個子帶段分配的比特數(shù)。
子帶量化器5產(chǎn)生的比例因子的量化指數(shù)和每個子帶樣本的量化指數(shù)。
多路復(fù)用器6還會把其它輔助信息打包。這些輔助信息包括但不限于輸入音頻信號的采樣頻率,音箱設(shè)置,糾錯碼,時間碼等。
本發(fā)明的第二實施例的編碼器如圖4所示。其大部分組件與實施例1的相同,區(qū)別在于本實施例的獨特的比特分配方法。具體地說,本實施例的比特分配不象實施例1那樣依據(jù)信噪比(SNR)以或信號對遮蓋比(SMR)來為每個子帶段分配比特,而是依據(jù)比例因子量化器52輸出的比例因子量化指數(shù)用以下公式來為每個子帶段分配比特。
b(c,k,d)=f(α·s(c,k,d))-θ(k)-β(3)其中1)b(c,k,d)是分配給當前子帶段的每個樣本的比特數(shù)。
2)f(α·s(c,k,d))是一個嚴格單調(diào)遞增函數(shù)。它可被優(yōu)選地設(shè)為f(α·s(c,k,d))=[α·s(c,k,d)]q,其中0<q≤2。它還可被進一步優(yōu)選地設(shè)為f(α·s(c,k,d))=α·s(c,k,d)。
3)θ(k)可以優(yōu)選地設(shè)為如圖5所示的的人耳在安靜環(huán)境下的聽覺門限(Threshold in Quite)的近似曲線[參考文獻1,2和10],更可優(yōu)選地設(shè)為零以簡化計算。
4)β是比特調(diào)整因子。
從式(3)可以看出,在比特調(diào)整因子β確定的情況下,分配到每個子帶段的每個樣本的比特數(shù)完全取決于其比例因子的量化指數(shù)。
很明顯,β越小(3)式分配給各個子帶段的比特越多;β越大(3)式分配給各子帶段的比特越少。比特分配的任務(wù)是在各個子帶段所占用的比特數(shù)的總和不超過給定的目標碼率(比特率)所允許分配給每幀音頻信號的總比特數(shù)的條件下找到β的最小值。
比特分配可以是全局最優(yōu)的,也即所有的聲道公用一個比特分配調(diào)整因子。假定在一個給定的目標碼率下所允許分配給每幀音頻信號的總比特數(shù)為Total_Bits(這是在減去傳送各種各樣的輔助信息所需的比特數(shù)后的總值,以后總是如此假定,不再另外說明),比特調(diào)整因子搜索器41須搜索不同的β值以找到一個滿足如下條件的最小β值ΣcΣkΣdb(c,k,d)·n(c,k,d)≤Total_Bits---(4)]]>其中n(c,k,d)為子帶段的樣本數(shù)。
由此求得的β就可用來按照式(3)為所有聲道的每個子帶段分配比特。同時,編碼器只須把這個比特分配調(diào)整因子傳給解碼器,解碼器也就能依據(jù)它和比例因子的量化指數(shù)按照式(3)為所有聲道的每個子帶段重建編碼器用的比特分配。
比特分配也可以是局部分別最優(yōu)的,如每個聲道分別擁有一個單獨的比特分配調(diào)整因子。假定在一個給定的目標碼率下按照某種預(yù)先確定的方式分配給第c聲道的每幀音頻信號的總比特數(shù)為Total_Bits(c)。比特調(diào)整因子搜索器41須搜索不同的β值以找到一個滿足如下條件的最小β值ΣkΣdb(c,k,d)·n(c,k,d)≤Total_Bits(c)----(5)]]>此時,編碼器就得為每個聲道傳送一個比特分配調(diào)整因子給解碼器。顯然,這個方法可以很直接地推廣于用其它其它形式來分享比特分配調(diào)整因子的情況。
綜上所述,本實施例的比特分配程序如下1)各個聲道的所有比例因子量化器52把每個子帶段的比例因子量化指數(shù)送給比特調(diào)整因子搜索器41。
2)比特調(diào)整因子搜索器41依據(jù)式(3)和(4)尋找到一個在給定碼率下的全局最優(yōu)的比特分配調(diào)整因子,并傳給多路復(fù)用器6以及比特分配器42。或者,比特調(diào)整因子搜索器41依據(jù)式(3)和(5)為每個聲道分別尋找到一個在給定碼率下的對各個聲道局部最優(yōu)的比特分配調(diào)整因子,并把它們分別傳給多路復(fù)用器6以及各自的比特分配器42。
3)比特分配器42按式(3)為每個子帶段分配比特,并傳給其對應(yīng)的量化器選取器54。
由上可見,本發(fā)明的比特分配只非常有限地利用了人耳聽覺模型以達到簡化比特分配的目的。這樣既可極大的減小比特分配的計算復(fù)雜度,還可僅僅用一個比特分配調(diào)整因子來表達比特分配的結(jié)果。在編碼后的碼流中僅須包含這個比特分配調(diào)整因子。解碼器在接收到這個參數(shù)后可根據(jù)它用式(3)很簡單地準確重建編碼器用的比特分配。這樣就節(jié)省掉了其他技術(shù)用于傳送分配到每個子帶段的比特數(shù)所需的比特資源。這些節(jié)省下來的比特資源可用于傳送子帶樣本的量化指數(shù),因而可以進一步提高音質(zhì)。
本發(fā)明的第三實施例的編碼器如圖6所示。其大部分組件與其它實施例的相同,區(qū)別在于本實施例比其它實施例多了一個聯(lián)合強度編碼器7。聯(lián)合強度編碼的理論基礎(chǔ)是人耳對聲音的空間定位在高頻(如高于7kHz時)主要依據(jù)聲音的強度。如圖6所示,在編碼時該聯(lián)合強度編碼器7可以把由左右(或其它可聯(lián)合)聲道的暫態(tài)檢測器3輸出的的高頻子帶加起來,只傳這個和子帶(稱為源聲道的被聯(lián)合編碼的子帶)的各個樣本的量化指數(shù),外加被聯(lián)合聲道的被聯(lián)合子帶的強度指數(shù),以達到節(jié)省比特的目的。
當用到聯(lián)合強度編碼時,對源聲道的被聯(lián)合編碼的子帶段的比特分配必須考慮到其它被聯(lián)合聲道編碼的同一子帶段的比特需求。假定源聲道為c,其他被聯(lián)合編碼的聲道的總集為J,則在計算對c聲道的被聯(lián)合編碼的子帶段的比特分配時應(yīng)采用的比例因子為s(c,k,d)=max{s(c,k,d),maxj∈J{s(j,k,d)}}---(6)]]>聯(lián)合強度編碼開始啟用的頻率如果過低可能會引起空間定位變窄,因此,在本實施例中,僅在低碼率時才引用聯(lián)合強度編碼。
實施例4本發(fā)明的第四實施例的編碼器如圖7所示。其大部分組件與其它實施例的相同,區(qū)別在于本實施例比其它實施例多了一個跨聲道的長期和短期線性預(yù)測器8。對每一段子帶信號,本發(fā)明搜索它與本子帶的短期和長期自相關(guān)性,及其與其它聲道同一子帶的信號的協(xié)相關(guān)性,以找到一個使預(yù)測誤差最小的線性預(yù)測器8。設(shè)x(c,k,n)為第c個聲道的第k個子帶的第n個樣本,則基于第s聲道的對第c聲道的線性預(yù)測為x^(c,k,n)=Σm=m0Aa(m)x(s,k,n-m)+Σm=0Bb(m)x(s,k,n-m-τ)----(7)]]>其中,a(m)和b(m)分別為短期和長期預(yù)測器的預(yù)測濾波器的系數(shù),τ為長期預(yù)測濾波器的延遲。當s=c時,上述預(yù)測完全基于本聲道,m0=1;當s≠c時,上述預(yù)測是跨聲道的,m0=0。
用(7)式對每一個子帶樣本x(c,k,n)做出預(yù)測后,就可得到一個對應(yīng)的預(yù)測誤差e(c,k,n)=x(c,k,n)-x^(c,k,n).---(8)]]>編碼器的任務(wù)是找到一組最佳的預(yù)測系數(shù)a(m),b(m),和延遲τ以使在該子帶段的總預(yù)測誤差如以下的均方誤差最小e2(c,k)=Σne2(c,k,n)=Σn(x(c,k,n)-x^(c,k,n))2.---(9)]]>如果子帶信號x(c,k,n)的周期性較強,則預(yù)測誤差的方差會比子帶信號x(c,k,n)本身的方差小很多。這意味著線性預(yù)測的預(yù)測增益很高,預(yù)測很成功。此時就可用預(yù)測誤差信號e(c,k,n)來取代x(c,k,n)送到子帶量化器5。否則,就直接把子帶信號x(c,k,n)送到子帶量化器5。因此,線性預(yù)測器8的工作程序可歸納如下1)估計預(yù)測系數(shù)與預(yù)測增益。
2)如果預(yù)測增益高,將本子帶段采用線性預(yù)測的決定、預(yù)測系數(shù)和延遲送到多路復(fù)用器6。同時,按(8)式產(chǎn)生預(yù)測誤差信號,并將它送給量化器5。
3)如果預(yù)測增益不高,將本子帶段不采用線性預(yù)測的決定送到多路復(fù)用器6。同時,將本子帶段的樣本x(c,k,n)送給量化器5。
當用到本聲道預(yù)測時,為了避免量化誤差在解碼時擴散,對預(yù)測誤差信號的量化必須閉環(huán)進行[參考文獻8,9和11],如圖8所示。由于解碼器只能得到由量化器5輸出的預(yù)測誤差的量化指數(shù),解碼器只能用逆量化器9來重建預(yù)測誤差,然后把它與預(yù)測值 相加來重建子帶樣本。而本聲道預(yù)測器81也只能用這些重建的子帶樣本來預(yù)測未來的子帶樣本。也即,代入(7)式的子帶樣本實質(zhì)上是重建的子帶樣本。
類似地,在作跨聲道預(yù)測時,為了避免量化誤差在解碼時擴散,x(s,k,n)也必須是已解碼后重建的子帶樣本,如圖9所示。注意,圖中9的預(yù)測器82是跨聲道預(yù)測器,因為其輸入的子帶樣本來自于另一個聲道。
跨聲道預(yù)測器82和本聲道預(yù)測器81可以同時并用,如圖10所示。首先,計算跨聲道預(yù)測的誤差e1(c,k,n)=x(c,k,n)-Σm=m0A1a1(m)x(s,k,n-m)-Σm=0B1b1(m)x(s,k,n-m-τ1)---(10)]]>然后,對此誤差作本聲道預(yù)測e2(c,k,n)=e1(c,k,n)-Σm=m0A2a2(m)e1(c,k,n-m)-Σm=0B2b2(m)e1(c,k,n-m-τ2)---(11)]]>當用到跨聲道預(yù)測時,編碼器一定要確保在解碼時源聲道已經(jīng)被解碼。也就是說編碼器一定要確保對各個聲道的解碼必須因循一定的可實現(xiàn)順序解碼的第一個聲道一定只能用本聲道預(yù)測,第二個聲道只能用本聲道預(yù)測或前面已解碼的那個聲道作跨聲道預(yù)測。以此類推。
編碼器可以搜索所有的可實現(xiàn)解碼順序以找到預(yù)測增益最大的解碼順序。編碼器也可只作有限的搜索以得到次優(yōu)解。
預(yù)測范例1長期或短期預(yù)測由于長期和短期預(yù)測并用時估計預(yù)測系數(shù)較難,故可采用或者長期或者短期預(yù)測的方式以減小復(fù)雜度x^(c,k,n)=Σm=0Bb(m)x(s,k,n-m-τ)]]>此時,τ小時為短期預(yù)測,τ大時為長期預(yù)測。
當以上公式用在跨聲道預(yù)測和本聲道預(yù)測同時并用的情況時,首先計算跨聲道預(yù)測的殘差e1(c,k,n)=x(c,k,n)-Σm=0B1b1(m)x(s,k,n-m-τ1)]]>其中,延遲τ1可取的最小值為零。然后,對此殘差作本聲道預(yù)測e2(c,k,n)=e1(c,k,n)-Σm=0B2b2(m)e1(c,k,n-m-τ2)]]>其中,延遲τ2可取的最小值為1。
預(yù)測范例2有限搜索的跨聲道預(yù)測為了簡化跨聲道預(yù)測在搜索解碼次序上的復(fù)雜度,本范例先找到頭兩個聲道的最優(yōu)次序。對隨后的聲道僅搜索本聲道預(yù)測以及用頭兩個聲道作源聲道的跨聲道預(yù)測。
為了進一步減小復(fù)雜度,可不做任何次序搜索,總用第一聲道作為所有其它聲道的跨聲道預(yù)測的源聲道。
較佳地,本發(fā)明的編碼器還可以在音頻幀輸入到子帶濾波器組2之前對音頻幀進行跨聲道和/或本聲道預(yù)測,即在幀長選擇器1與濾波器組2之間進一步包括一個跨聲道和/或本聲道預(yù)測器,此后,將預(yù)測誤差輸入到子帶濾波器組2,并按照上面所描述的類似的處理對預(yù)測誤差編碼。編碼流程前述的四個實施例都可單獨成為一個完整的編碼器。但如果把它們的所有功能都匯總起來組成一個編碼器,則可達到最佳壓縮效率。圖11示出了把本發(fā)明的四個實施例的所有功能匯合在一起時的編碼流程。其中,聯(lián)合強度編碼,跨聲道長短期預(yù)測,和全局比特分配是獨立可選的。當它們中的任何一個未被選用時,其在圖11中僅起一個把送入的數(shù)據(jù)不作任何改動地傳出去的功能。當然,如果圖11中的比特分配器沒有被選用,另一個在實施例1中討論過的通用比特分配器必須被引入以實現(xiàn)同樣的功能。下面結(jié)合圖2,4,6,7,8,9和10描述本發(fā)明的編碼步驟(參見圖11)。
E1)幀長選擇幀長選擇器1接收從每個聲道輸入的音頻信號的樣本,根據(jù)音頻信號的采樣率,目標碼率,和視頻幀頻率(當多聲道音頻信號作為視頻信號的伴音時)選擇音頻幀長,然后把幀長信息傳送給編碼器的其它組件。由于本發(fā)明的編碼器及其方法是以幀為基本單位,編碼器的所有組件,編碼流程的每一步,都直接或間接地用到幀長。但為了描述的簡潔明朗,圖11沒有把幀長信息的傳送路徑全部標出。在幀長確定后,幀長選擇器1還按幀長把輸入音頻信號的樣本分成幀,并一幀一幀地送入子帶分析濾波器組2。本步驟不對輸入音頻信號本身作任何處理。
E2)子帶分析濾波器組子帶分析濾波器組2把每一聲道的音頻信號分解為M個子帶信號。
E3)暫態(tài)檢測暫態(tài)檢測器3分析每個子帶信號的暫態(tài)情況,并據(jù)此把它分成暫態(tài)段和穩(wěn)態(tài)段。然后,把每一段的位置信息傳送給編碼器的其它組件。由于與步驟E1類似的原因,圖11沒有把暫/穩(wěn)態(tài)段的位置信息的傳送路徑全部標出。本步驟不對子帶信號本身作任何處理。
E4)聯(lián)合強度編碼聯(lián)合強度編碼器7在作完聯(lián)合強度編碼后,拋棄被聯(lián)合子帶的樣本,只將其每一子帶段的強度指數(shù)傳送給比特分配(E7)器4和多路復(fù)用(E9)器6。本步驟是本發(fā)明在低碼率時優(yōu)選的。不采用本步驟不影響編碼器或方法的完整性,只是編碼效率會有下降。
E5)跨聲道長期和短期預(yù)測跨聲道長期和短期預(yù)測器8在作完線性預(yù)測后,將是否采用預(yù)測的決定傳給多路復(fù)用(E9)器6。如果決定采用預(yù)測,還將預(yù)測濾波器的延遲和預(yù)測系數(shù)傳給多路復(fù)用(E9)器6,并用預(yù)測誤差信號來取代子帶信號傳給子帶量化器5。本步驟是本發(fā)明優(yōu)選的,不采用本步驟不影響編碼器或方法的完整性,只是編碼效率會有下降。
為了便于描述,圖11把子帶量化器5的功能分為兩步比例因子(E6)和矢量/標量量化(E8)。
E6)比例因子子帶量化器5從子帶信號(如決定采用了線性預(yù)測,則為預(yù)測誤差信號,以下統(tǒng)稱子帶信號)中以暫/穩(wěn)態(tài)段為單位估計并量化比例因子。然后,把比例因子的量化指數(shù)傳送給比特分配(E7)器4和多路復(fù)用(E9)器6。本步驟不對子帶信號本身作任何處理。
E7)比特分配比特調(diào)整因子搜索器41依據(jù)由步驟E6輸入的比例因子的量化指數(shù),以及由E4輸入的強度指數(shù)(如果聯(lián)合強度編碼被選用),尋找到最優(yōu)的比特分配調(diào)整因子,并把它傳給多路復(fù)用(E9)器6。然后,比特分配器42又依據(jù)(3)式把比特分配到每一個子帶段,并把每一個子帶段所分配到的比特數(shù)傳給量化器選取器54以供矢量/標量量化(步驟E8)用。以上的比特分配方法是本發(fā)明優(yōu)選的。如不優(yōu)選此方法,必須采用一個其它的比特分配方法,以維持編碼器的完整性。本步驟不對子帶信號本身作任何處理。
E8)矢量/標量量化量化器選取器54依據(jù)比特分配(E7)器4送來的每一個子帶段所分配到的比特數(shù)為每一個子帶段選取一個量化器,然后把它傳送給子帶樣本量化器55。子帶樣本量化器55隨后以子帶段為單位量化每一個子帶樣本,并把其量化指數(shù)傳給多路復(fù)用(E9)器6。
E9)多路復(fù)用(MUX)多路復(fù)用器6把每一個子帶樣本的量化指數(shù)和以下的輔助信息打包(多路復(fù)用)成一個完整的音頻幀并將其輸出音頻幀長,暫/穩(wěn)態(tài)段的位置,強度指數(shù)(如果聯(lián)合強度編碼被選用),是否采用預(yù)測的決定,預(yù)測濾波器的延遲和系數(shù),比例因子的量化指數(shù),和比特分配調(diào)整因子。多路復(fù)用器6還可打包(多路復(fù)用)輸出其它一些輔助數(shù)據(jù),如采樣頻率,音箱設(shè)置,糾錯碼,時間碼等。
解碼本發(fā)明的解碼器及其解碼方法在本質(zhì)上為編碼器及其方法的逆過程.在此,根據(jù)圖12和13描述解碼流程和解碼器各部件。
解碼流程經(jīng)過本發(fā)明的編碼方法和編碼器產(chǎn)生的碼流須經(jīng)過以下的主要步驟(圖12)來解碼重建多聲道音頻信號D1)解包(DEMUX)輔助信息多路復(fù)用解包器110解包出以下輔助信息·幀長。
·所有子帶段(暫/穩(wěn)態(tài)段)的位置。
·比特分配調(diào)整因子。
·每個子帶段的比例因子量化指數(shù)。
·每個子帶段是否采用跨聲道長期和短期預(yù)測的決定;如果采用,進一步解包出預(yù)測濾波器的延遲和系數(shù)。
·被聯(lián)合強度編碼的子帶段的強度指數(shù)D2)比特分配比特分配器42依據(jù)輸入的比特分配調(diào)整因子和每個子帶段的比例因子量化指數(shù)為每個子帶段分配比特。此比特分配器與編碼器用到的比特分配器42完全一樣,故仍延用標號42。本比特分配方法是本發(fā)明優(yōu)選的;如編碼器采用別的比特分配方法,則必須越過不作本步驟。但步驟D1通常必須增加一個解包項目從輸入碼流中解包出比特分配。
D3)解包子帶樣本的量化指數(shù)多路復(fù)用解包器110依據(jù)步驟D2分配的比特數(shù)從輸入碼流中解包出每個子帶樣本的量化指數(shù)。
D4)逆量化重建子帶樣本子帶樣本逆量化器120依據(jù)步驟D1解包出的比例因子量化指數(shù)和步驟D3解包出的子帶樣本的量化指數(shù)重建每個子帶樣本。
D5)跨聲道長期和短期預(yù)測對每一個子帶段,如果步驟D1解包出的預(yù)測決定為肯定,則跨聲道長期和短期預(yù)測器130對本子帶段的所有樣本作預(yù)測。否則,跨聲道長期和短期預(yù)測器130對本子帶段的所有樣本不作任何處理。本步驟是本發(fā)明優(yōu)選的;如編碼器未采用跨聲道長期和短期預(yù)測,則必須越過不作本步驟。
D6)聯(lián)合強度解碼對每一個被聯(lián)合強度編碼的子帶段,聯(lián)合強度解碼器140首先從源子帶段拷貝子帶樣本到本子帶段。然后,依據(jù)步驟D1解包出的強度指數(shù)重建強度比例因子,并用它修正拷貝到本子帶段的樣本值。本步驟是本發(fā)明在低碼率時優(yōu)選的;如編碼器未采用聯(lián)合強度編碼,則必須越過不作本步驟。
D7)合成濾波器組合成濾波器組150把子帶樣本合成重建成音頻信號。
如果本發(fā)明的編碼器在音頻幀輸入到子帶濾波器組2之前對音頻幀進行了跨聲道和/或本聲道預(yù)測,此時還得對由合成濾波器組150重建的信號作相應(yīng)的預(yù)測以重建音頻信號。
解碼器本發(fā)明的解碼器如圖13所示。以下描述各個部件多路復(fù)用解包器(DEMUX)110
多路復(fù)用解包器110負責(zé)從壓縮編碼的碼流中解包出解碼步驟D1和D3中列出的數(shù)據(jù)。它也負責(zé)從壓縮編碼的碼流中解包出其它輔助數(shù)據(jù),如采樣頻率,音箱設(shè)置,糾錯碼,時間碼等。
比特分配器42此比特分配器與編碼器用到的比特分配器42完全一樣,故仍延用標號42。此比特分配器的功能是把比特分配調(diào)整因子和每個子帶段的比例因子量化指數(shù)代入(3)式以得出分配給每個子帶段的每個樣本的比特數(shù)。
子帶樣本逆量化器120子帶樣本逆量化器120根據(jù)每個子帶段的比特分配選取量化器。然后,以此量化器和該子帶段的比例因子由子帶樣本的量化指數(shù)重建子帶樣本。
注意,當某一個子帶段采用了跨聲道長期和短期預(yù)測,則子帶樣本逆量化器120重建的是該子帶段的預(yù)測誤差信號,而不是子帶樣本本身。
跨聲道長期和短期預(yù)測器130對每一個子帶段,如果步驟D1解包出的預(yù)測決定為肯定,則跨聲道長期和短期預(yù)測器130對本子帶段的所有樣本作預(yù)測。否則,跨聲道長期和短期預(yù)測器130對本子帶段的所有樣本不作任何處理。
作本聲道預(yù)測的預(yù)測器如圖14。其中的預(yù)測器81與編碼器用到的預(yù)測器81完全一樣,故仍延用標號81。
作跨聲道預(yù)測的預(yù)測器如圖15。其中的預(yù)測器82與編碼器用到的預(yù)測器82完全一樣,故仍延用標號82。
當跨聲道和本聲道預(yù)測同時并用時,先作本聲道預(yù)測,然后再作跨聲道預(yù)測,如圖16所示。
聯(lián)合強度解碼器140
對每一個被聯(lián)合強度編碼的子帶段,聯(lián)合強度解碼器140首先從源子帶段拷貝子帶樣本到本子帶段。然后,依據(jù)強度指數(shù)重建強度比例因子,并用它修正拷貝到本子帶段的樣本值。
子帶合成濾波器組150子帶合成濾波器組150把子帶樣本合成重建成音頻信號。子帶合成濾波器組150是編碼器中的子帶分解濾波器組2的逆,是同時設(shè)計的。也即,編碼器中的子帶分解濾波器組2確定后,子帶合成濾波器組150也就完全確定了[參考文獻8]。
應(yīng)用方案本發(fā)明首先是一個多聲道數(shù)字音頻壓縮技術(shù)。其優(yōu)點包括壓縮效率高,解碼器簡單,解碼后的音頻信號保真度高,以及能適用于高,中,和低碼率的各種應(yīng)用。因此,它完全適用于純粹的音頻應(yīng)用,如數(shù)字音頻廣播等;其解碼器完全可獨立地安裝在純粹的音響設(shè)備中,如功放,隨身聽等。
由于音頻信號大多以視頻信號的伴音的形式出現(xiàn),由于本發(fā)明的編解碼方法的壓縮效率高,經(jīng)過本發(fā)明編碼的音頻信號能與視頻信號同步剪輯并能經(jīng)受得起十次以上的縱列編碼,因而在實際應(yīng)用中具有如下的優(yōu)點1)能同時滿足節(jié)目的配送和傳輸?shù)囊蟆?br>
2)本發(fā)明的編碼技術(shù)極大地簡化了節(jié)目配送的環(huán)節(jié)和設(shè)備。以數(shù)字電視為例,圖17示出了采用本技術(shù)的節(jié)目配送和傳輸?shù)倪^程。很明顯,它比Dolby的方案(圖1)簡單了許多。
3)由于省去了多次的轉(zhuǎn)移編碼環(huán)節(jié),本技術(shù)極大地提高了節(jié)目配送過程的保真度。
4)由于省去了圖1中的多個編碼器和解碼器,本技術(shù)也極大地降低了節(jié)目配送的成本。
參考文獻[1]ISO/IEC 13818-7,1997. ISO/IEC 14496-3,1998. S.Smyth,M.Smyth,and W.P.Smith,“Multi-channel PredictiveSubband Audio conder using Psychoacoustic Adaptive Bit Allocation InFrequency,Time,And Over The Multiple Channels,”US Patent 5956674. M.Smyth,“An overview of the Coherent Acoustics codingsystem,″http//www.dtsonline.com/whitepaper.pdf,1999. S.Smyth,W.P.Smith,M.Smyth,M.Yan,and T.Jung,″DTSCoherent Acoustics Delivering High Quality Multichannel Sound to theConsume,″AES 100th Convention,1996. L.Fielder and C.Todd,″The design of a video friendly audiocoding system for distribution applications,″AES 17thInternaltionalConference,pp.86-92,1999. C.Todd,G.Davidson,M.Davis,L.Fielder,B.Link,and S.Vernon,″AC-3,F(xiàn)lexible perceptual coding for audio transmission andstorage,″96th AES Convention,Amsterdam,1994. P.P.Vaidyanathan,″Multirate systems and filter banks,″Prentice Hall,1993. A.Gersho and R.M.Gray,″Vector quantization and signalcompression,″Kluwer,1992. B.C.J.Moore,″An introduction to the psychology of hearing,″Academic Press,1997. A.M.Kondoz,“Digital Speech,″John Wiley & Sons,1994.
權(quán)利要求
1.一種用于對多聲道數(shù)字音頻信號進行壓縮編碼的編碼器,包括幀長選擇器,用于接收所述的音頻信號,根據(jù)所述音頻信號的采樣率和目標碼率選擇幀長,并按此幀長將所述的音頻信號分成幀;子帶分解濾波器組,用于將逐幀輸入的音頻信號分解成多個子帶信號;暫態(tài)檢測器,用于將輸入的子帶信號劃分成暫態(tài)段和穩(wěn)態(tài)段,其段長自適應(yīng)地隨暫態(tài)和穩(wěn)態(tài)情況變化,并輸出各段的位置信息;比例因子估計器,用于估計并量化每段子帶信號的比例因子,并輸出比例因子的量化指數(shù);比特分配器,用于將由目標碼率所決定的比特資源自適應(yīng)地分配到各個子帶段;子帶量化器,用于依據(jù)所述比特分配對所述的子帶信號以段為單位量化;多路復(fù)用器,用于將子帶量化器產(chǎn)生的子帶樣本的量化指數(shù)以及包含有幀長、段位置信息、比例因子的量化指數(shù)以及比特分配信息的輔助信息多路復(fù)用打包成一個以幀為單位的完整的碼流。
2.如權(quán)利要求1所述的編碼器,當所述的音頻信號作為視頻信號的伴音時,其中所述的幀長選擇器還根據(jù)視頻幀頻率而選擇音頻幀長,使得音頻幀長是視頻幀長的有理分數(shù)或其整數(shù)倍。
3.如權(quán)利要求2所述的編碼器,其中所述濾波器組的子帶數(shù)是由幀選擇器根據(jù)不同的視頻幀頻率而選擇的各個音頻幀長的公因子。
4.如權(quán)利要求1-3中任一個所述的編碼器,其中子帶量化器由一組多個不同的標量量化器和矢量量化器構(gòu)成,當量化級多時采用標量量化,而當量化級少時采用矢量量化。
5.如權(quán)利要求1-4中任一個所述的編碼器,其中所述比特分配器根據(jù)每個子帶段的比例因子量化指數(shù)和一個比特分配調(diào)整因子為每個子帶樣本分配比特。
6.如權(quán)利要求5所述的編碼器,其分配給第c聲道第k個子帶第d段中的樣本的比特數(shù)可進一步由下式?jīng)Q定b(c,k,d)=f(α·s(c,k,d))-θ(k)-β其中f(·)是α·s(c,k,d)的嚴格單調(diào)遞增函數(shù),s(c,k,d)是該子帶段的比例因子的量化指數(shù),α是其量化步長,θ(k)近似為人耳在安靜環(huán)境下的聽覺門限,β為比特調(diào)整因子。
7.如權(quán)利要求6所述的編碼器,其中f(α·s(c,k,d))=[α·s(c,k,d)]q,其中0<q<2。
8.如權(quán)利要求6或7所述的編碼器,其中θ(k)=0。
9.如權(quán)利要求5-8中任一個所述的編碼器,其中所述的比特分配調(diào)整因子可以是所有聲道公用一個,每個聲道各有一個,或其它方式分享的,但這些比特分配調(diào)整因子應(yīng)該為這樣的一組最佳值它們在給定比特分享條件下使得各個子帶樣本分配到盡量多的比特數(shù),但其總和,外加傳送輔助信息所需的比特數(shù),又不能超出目標碼率所容許分配給該幀音頻信號的總比特數(shù)。
10.如權(quán)利要求4-9所述的編碼器,進一步包括一個聯(lián)合強度編碼器,連接在所述的暫態(tài)檢測器的輸出端,其中對于每個被聯(lián)合編碼的子帶段,所述的用于比特分配器分配比特的比例因子量化指數(shù)必須為被聯(lián)合在一起編碼的所有聲道在同一子帶段的比例因子量化指數(shù)的最大值,并輸出各個被聯(lián)合編碼的聲道的強度指數(shù)作為輔助信息給多路復(fù)用器。
11.如權(quán)利要求1-9中任一個所述的編碼器,進一步包括一個預(yù)測器,連接在所述的暫態(tài)檢測器的輸出端,利用其它聲道的樣本或本聲道過去的樣本來對本聲道當前的樣本作預(yù)測。
12.如權(quán)利要求10所述的編碼器,進一步包括一個預(yù)測器,連接在所述的聯(lián)合強度編碼器的輸出端,利用其它聲道的樣本或本聲道過去的樣本來對本聲道當前的樣本作預(yù)測。
13.如權(quán)利要求1-12中任一個所述的編碼器,還可進一步包括一個預(yù)測器,連接在所述的子帶分解濾波器組之前,利用其它聲道的樣本或本聲道過去的樣本來對本聲道當前的樣本作預(yù)測。
14.如權(quán)利要求11-13中任一個所述的編碼器,當其中所述的預(yù)測器采用其它聲道的樣本作為源來對當前的樣本作預(yù)測時,進一步包括另一個預(yù)測器,用于接收前面所述的預(yù)測器的預(yù)測誤差,以對此預(yù)測誤差再做一次長期和/或短期預(yù)測。
15.如權(quán)利要求11-14所述的編碼器,其中所述的其它聲道僅限于第一和第二聲道。
16.如權(quán)利要求11-14所述的編碼器,其中所述的其它聲道是第一聲道。
17.如權(quán)利要求11-16中任一個所述的編碼器,其中所述的預(yù)測器是包含有一個延遲因子的線性預(yù)測器,當該延遲因子小時為短期預(yù)測,延遲因子大時為長期預(yù)測,并將該延遲因子作為一個輔助信息傳送到多路復(fù)用器。
18.如權(quán)利要求11-16中任一個所述的編碼器,由一個短期線性預(yù)測器和一個包含有延遲因子的長期線性預(yù)測器組成,并將該延遲因子作為一個輔助信息傳送到多路復(fù)用器。
19.一種用于對多聲道數(shù)字音頻信號進行壓縮編碼的方法,包括下列步驟a)據(jù)所述音頻信號的采樣率和目標碼率選擇幀長,并按此幀長將所述的音頻信號分成幀;b)用子帶分解濾波器組將逐幀輸入的音頻信號分解成多個子帶信號;c)將輸入的子帶信號劃分成暫態(tài)段和穩(wěn)態(tài)段,其段長自適應(yīng)地隨暫態(tài)和穩(wěn)態(tài)情況變化;d)估計并量化每段子帶信號的比例因子,并輸出比例因子的量化指數(shù);e)將由目標碼率所決定的比特資源自適應(yīng)地分配到各個子帶段;f)依據(jù)所分配的比特數(shù)對所述的子帶信號以段為單位量化;g)將子帶量化器產(chǎn)生的子帶樣本的量化指數(shù)以及以及包含有幀長、段位置信息、比例因子的量化指數(shù)以及比特分配信息的輔助信息多路復(fù)用打包成一個以幀為單位的完整碼流。
20.如權(quán)利要求19所述的編碼方法,當所述的音頻信號作為視頻信號的伴音時,其中所述的幀長選擇方法還根據(jù)視頻幀頻率而選擇音頻幀長,使得音頻幀長是視頻幀長的有理分數(shù)或其整數(shù)倍。
21.如權(quán)利要求20所述的編碼方法,其中所述濾波器組的子帶數(shù)是由幀長選擇方法根據(jù)不同的視頻幀頻率而選擇的各個音頻幀長的公因子。
22.如權(quán)利要求19-21中任一個所述的編碼方法,其中的子帶量化步驟運用一組多個不同的標量量化器和矢量量化器,當量化級多時采用標量量化,而當量化級少時采用矢量量化。
23.如權(quán)利要求19-22所述的編碼方法,其中所述的比特分配步驟根據(jù)比例因子量化指數(shù),與一個比特分配調(diào)整因子一起,為每個子帶樣本分配比特。
24.如權(quán)利要求23所述的比特分配方法,其分配給第c聲道第k個子帶第d段中的樣本的比特數(shù)可進一步由下式?jīng)Q定b(c,k,d)=f(α·s(c,k,d))-θ(k)-β其中f(·)是α·s(c,k,d)的嚴格單調(diào)遞增函數(shù),s(c,k,d)是該子帶段的比例因子的量化指數(shù),α是其量化步長,θ(k)近似為人耳在安靜環(huán)境下的聽覺門限,β為比特調(diào)整因子。
25.如權(quán)利要求24所述的比特分配方法,其中f(α·s(c,k,d))=[α·s(c,k,d)]q,其中0<q<2。
26.如權(quán)利要求24或25所述的比特分配方法,其中θ(k)=0。
27.如權(quán)利要求23-26中任一個所述的比特分配方法,其中所述的比特分配調(diào)整因子可以是所有聲道公用一個,每個聲道各有一個,或其它方式分享的,但這些比特調(diào)整因子應(yīng)為這樣的一組最佳值它們在給定比特分享條件下使得各個子帶樣本分配到盡量多的比特數(shù),但其總和,外加傳送輔助信息所需的比特數(shù),又不能超出目標碼率所容許分配給該幀音頻信號的總比特數(shù)。
28.如權(quán)利要求23-26中任一個所述的編碼方法,還可進一步包括一個聯(lián)合強度編碼步驟,緊跟在所述的暫態(tài)檢測步驟后面,對于每個被聯(lián)合編碼的子帶段,所述的用于比特分配步驟中的比例因子量化指數(shù)必須為被聯(lián)合在一起編碼的所有聲道在同一子帶段的比例因子量化指數(shù)的最大值。
29.如權(quán)利要求19-27中任一個所述的編碼方法,還可進一步包括一個預(yù)測步驟,緊跟在所述的暫態(tài)檢測步驟的后面,利用其它聲道的樣本或本聲道過去的樣本來對本聲道當前的樣本作預(yù)測。
30.如權(quán)利要求28所述的編碼方法,還可進一步包括一個預(yù)測步驟,緊跟在所述的聯(lián)合強度編碼步驟的后面,利用其它聲道的樣本或本聲道過去的樣本來對本聲道當前的樣本作預(yù)測。
31.如權(quán)利要求19-30中任一個所述的編碼方法,還可進一步包括一個預(yù)測步驟,設(shè)置于所述的子帶分解濾波器組之前,利用其它聲道的樣本或本聲道過去的樣本來對本聲道當前的樣本作預(yù)測。
32.如權(quán)利要求29-31中任一個中所述的編碼方法,其中所述的預(yù)測步驟包括用其它聲道的樣本作為源來對當前的樣本作長期和/或短期預(yù)測,然后再對此預(yù)測的誤差再做一次長期和/或短期預(yù)測。
33.如權(quán)利要求29-32中所述的編碼方法,其中所述的其它聲道僅局限于用第一和第二聲道。
34.如權(quán)利要求29-32所述的編碼方法,其中所述的其它聲道僅局限于第一聲道。
35.如權(quán)利要求29-34中任一個中所述的編碼方法,其中所述預(yù)測方法所用的預(yù)測器由一個延遲因子和一個線性預(yù)測器組成,延遲小時為短期預(yù)測,延遲大時為長期預(yù)測。
36.如權(quán)利要求29-34中任一個所述的編碼方法,其中所述的預(yù)測方法所用的預(yù)測器由一個短期線性預(yù)測器和一個包含有延遲因子的長期線性預(yù)測器組成。
37.一種用于從音頻數(shù)據(jù)碼流中解碼重建多聲道音頻信號的解碼器,包括a)多路復(fù)用解包器,用于從上述碼流中多路分解出子帶信號的量化指數(shù)以及包含有音頻幀長,子帶段邊界,子帶段的比例因子量化指數(shù)和比特分配的輔助信息;b)子帶逆量化器,用于依據(jù)所述的輔助信息以段為單位由子帶信號的量化指數(shù)重建子帶信號;c)子帶合成濾波器組,用于由子帶信號重建音頻信號。
38.一種用于從音頻數(shù)據(jù)碼流中解碼重建多聲道音頻信號的解碼器,包括a)多路復(fù)用解包器,用于從上述碼流中多路分解出子帶信號的量化指數(shù)以及包含有音頻幀長,子帶段邊界,子帶段的比例因子量化指數(shù)和比特分配調(diào)整因子的輔助信息;b)比特分配器,用于依據(jù)子帶段的比例因子量化指數(shù)和比特分配調(diào)整因子為每個子帶樣本分配比特數(shù);c)子帶逆量化器,用于依據(jù)輔助信息中的比例因子以段為單位按照所述分配的比特數(shù)由子帶信號的量化指數(shù)重建子帶信號;d)子帶合成濾波器組,用于由子帶信號重建音頻信號。
39.如權(quán)利要求38所述的解碼器,其中所述的比特分配器分配給第c聲道第k個子帶第d段中的樣本的比特數(shù)可進一步由下式?jīng)Q定b(c,k,d)=f(α·s(c,k,d))-θ(k)-β其中f(·)是α·s(c,k,d)的嚴格單調(diào)遞增函數(shù),s(c,k,d)是該子帶段的比例因子的量化指數(shù),α是其量化步長,θ(k)近似為人耳在安靜環(huán)境下的聽覺門限,β為比特調(diào)整因子。
40.如權(quán)利要求39所述的解碼器,其中f(α·s(c,k,d))=[α·s(c,k,d)]q,其中0<q<2。
41.如權(quán)利要求39或40所述的編碼器,其中θ(k)=0。
42.如權(quán)利要求37-41中任一個所述的解碼器,可進一步包括一個預(yù)測器,連接在所述的子帶逆量化器的輸出端,用于由預(yù)測誤差重建子帶樣本。
43.如權(quán)利要求37-41中任一個所述的解碼器,還可進一步包括一個預(yù)測器,連接在所述的子帶合成濾波器組的輸出端,用于由預(yù)測誤差重建音頻信號的樣本。
44.如權(quán)利要求42-43中任一所述的解碼器,其中所述的預(yù)測器對跨聲道預(yù)測的誤差做一次長期和/或短期預(yù)測以重建跨聲道預(yù)測誤差,再把重建的結(jié)果加到用其它聲道的樣本作為源來對當前聲道的樣本所作的長期和/或短期預(yù)測值上以重建信號樣本。
45.如權(quán)利要求38-44中任一個所述的解碼器,還可進一步包括一個聯(lián)合強度解碼器,連接在所述的子帶合成濾波器組的輸入端,用于對輸入信號進行聯(lián)合解碼。
46.如權(quán)利要求45所述的解碼器,對于每個被聯(lián)合編碼的子帶段,所述的比特分配器分配比特用的比例因子量化指數(shù)必須為被聯(lián)合在一起編碼的所有聲道在同一子帶段的比例因子量化指數(shù)的最大值。
47.一種用于從編碼后的音頻數(shù)據(jù)流中解碼重建多聲道音頻信號的方法,包括下列步驟a)從上述碼流中多路分解出子帶信號的量化指數(shù)以及相關(guān)的如音頻幀長,子帶段邊界,子帶段的比例因子量化指數(shù),和比特分配等輔助信息;b)依據(jù)相關(guān)的輔助信息以段為單位由子帶信號的量化指數(shù)重建子帶信號;c)用子帶合成濾波器組由子帶信號重建音頻信號。
48.一種用于從編碼后的音頻數(shù)據(jù)流中解碼重建多聲道音頻信號的方法,包括下列步驟a)從上述碼流中多路分解出包含有音頻幀長,子帶段邊界,子帶段的比例因子量化指數(shù)和比特分配調(diào)整因子的輔助信息;b)依據(jù)子帶段的比例因子量化指數(shù)和比特分配調(diào)整因子為每個子帶樣本分配比特;c)依據(jù)上述比特分配從上述碼流中多路分解出子帶信號的量化指數(shù);d)依據(jù)輔助信息中的比例因子以段為單位按照所述的分配的比特數(shù)由子帶信號的量化指數(shù)重建子帶信號;e)由子帶合成濾波器組利用所述的子帶信號重建音頻信號。
49.如權(quán)利要求48所述的解碼方法,其中步驟b)中所述的比特分配可進一步由下式確定b(c,k,d)=f(α·s(c,k,d))-θ(k)-β其中b(c,k,d)是分配給第c聲道第k個子帶第d段中的樣本的比特數(shù),f(·)是α·s(c,k,d)的嚴格單調(diào)遞增函數(shù),s(c,k,d)是該子帶段的比例因子的量化指數(shù),α是其量化步長,θ(k)近似為人耳在安靜環(huán)境下的聽覺門限,β為比特調(diào)整因子。
50.如權(quán)利要求49所述的解碼方法,其中f(α·s(c,k,d))=[α·s(c,k,d)]q,其中0<q<2。
51.如權(quán)利要求49或50所述的編碼方法,其中θ(k)=0。
52.如權(quán)利要求47-51中任一個所述的解碼方法,還可進一步包括一個預(yù)測步驟,設(shè)置在所述的子帶逆量化步驟之后,用于由預(yù)測誤差重建子帶樣本。
53.如權(quán)利要求47-52中任一個所述的解碼方法,還可進一步包括一個預(yù)測步驟,設(shè)置在所述的子帶合成步驟之后,用于由預(yù)測誤差重建音頻信號子帶樣本。
54.如權(quán)利要求52-53所述的解碼方法,其中所述預(yù)測步驟先對跨聲道預(yù)測的誤差做一次長期和/或短期預(yù)測以重建跨聲道預(yù)測誤差,再把重建的結(jié)果加到用其它聲道的樣本作為源來對當前聲道的樣本所作的長期和/或短期預(yù)測值上以重建信號樣本。
55.如權(quán)利要求48-54中任一個所述的解碼方法,還可進一步包括一個聯(lián)合強度解碼步驟,設(shè)置在所述的子帶合成濾波器組之前,用于對輸入信號進行聯(lián)合解碼。
56.如權(quán)利要求55所述的解碼方法,對于每個被聯(lián)合編碼的子帶段,所述的分配比特用的比例因子量化指數(shù)必須為被聯(lián)合在一起編碼的所有聲道在同一子帶段的比例因子量化指數(shù)的最大值。
57.如權(quán)利要求42-44中任一個所述的解碼器,其中所述的預(yù)測器是包含有一個延遲因子的線性預(yù)測器,當該延遲因子小時為短期預(yù)測,延遲因子大時為長期預(yù)測,并將該延遲因子作為一個輔助信息傳送到多路復(fù)用器。
58.如權(quán)利要求42-44中任一個所述的解碼器,由一個短期線性預(yù)測器和一個包含有延遲因子的長期線性預(yù)測器組成,并將該延遲因子作為一個輔助信息傳送到多路復(fù)用器。
59.如權(quán)利要求52-54中任一個所述的解碼方法,其中所述的預(yù)測步驟采用包含有一個延遲因子的線性預(yù)測器,當該延遲因子小時為短期預(yù)測,延遲因子大時為長期預(yù)測,并將該延遲因子作為一個輔助信息傳送到多路復(fù)用器。
60.如權(quán)利要求52-54中任一個所述的解碼方法,由一個短期線性預(yù)測器和一個包含有延遲因子的長期線性預(yù)測器組成,并將該延遲因子作為一個輔助信息傳送到多路復(fù)用器。
全文摘要
用于對多聲道數(shù)字音頻信號進行壓縮編碼解碼的設(shè)備及其方法,其中編碼設(shè)備包括幀長選擇器,子帶分解濾波器組,暫態(tài)檢測器,比例因子估計器,比特分配器,用于將由目標碼率所決定的比特資源自適應(yīng)地分配到各個子帶段,子帶量化器,以及多路復(fù)用器。該編解碼設(shè)備及其方法的壓縮效率高,經(jīng)過本發(fā)明編碼的音頻信號能與視頻信號同步剪輯并能經(jīng)受得起十次以上的縱列編碼,因而1)能同時滿足節(jié)目的配送和傳輸?shù)囊螅?)極大地簡化了節(jié)目配送的環(huán)節(jié)和設(shè)備、提高了節(jié)目配送過程的保真度以及降低了節(jié)目配送的成本。
文檔編號H03M7/30GK1477872SQ0213024
公開日2004年2月25日 申請日期2002年8月21日 優(yōu)先權(quán)日2002年8月21日
發(fā)明者游余立 申請人:中山正音數(shù)字技術(shù)有限公司, 游余立