專(zhuān)利名稱(chēng):一種增強(qiáng)音頻編解碼裝置及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及音頻編解碼技術(shù)領(lǐng)域,具體地說(shuō),涉及一種基于感知模型的增強(qiáng)音頻編解碼裝置及方法。
背景技術(shù):
為得到高保真的數(shù)字音頻信號(hào),需對(duì)數(shù)字音頻信號(hào)進(jìn)行音頻編碼或音頻壓縮以便于存儲(chǔ)和傳輸。對(duì)音頻信號(hào)進(jìn)行編碼的目的是用盡可能少的比特?cái)?shù)實(shí)現(xiàn)音頻信號(hào)的透明表示,例如原始輸入的音頻信號(hào)與經(jīng)編碼后輸出的音頻信號(hào)之間幾乎沒(méi)有差別。
在二十世紀(jì)八十年代初,CD的出現(xiàn)體現(xiàn)了用數(shù)字表示音頻信號(hào)的諸多優(yōu)點(diǎn),例如高保真度、大動(dòng)態(tài)范圍和強(qiáng)魯棒性。然而,這些優(yōu)點(diǎn)都是以很高的數(shù)據(jù)速率為代價(jià)的。例如CD質(zhì)量的立體聲信號(hào)的數(shù)字化所要求的采樣率為44.1kHz,且每個(gè)采樣值需用15比特進(jìn)行均勻量化,這樣,沒(méi)有經(jīng)過(guò)壓縮的數(shù)據(jù)速率就達(dá)到了1.41Mb/s,如此高的數(shù)據(jù)速率給數(shù)據(jù)的傳輸和存儲(chǔ)帶來(lái)極大的不便,特別是在多媒體應(yīng)用和無(wú)線傳輸應(yīng)用的場(chǎng)合下,更是受到帶寬和成本的限制。為了保持高質(zhì)量的音頻信號(hào),因此要求新的網(wǎng)絡(luò)和無(wú)線多媒體數(shù)字音頻系統(tǒng)必須降低數(shù)據(jù)的速率,且同時(shí)不損害音頻的質(zhì)量。針對(duì)上述問(wèn)題,目前已提出了多種既能得到很高壓縮比又能產(chǎn)生高保真的音頻信號(hào)的音頻壓縮技術(shù),典型的有國(guó)際標(biāo)準(zhǔn)化組織ISO/IEC的MPEG-1/-2/-4技術(shù)、杜比公司的AC-2/AC-3技術(shù)、索尼公司的ATRAC/MiniDisc/SDDS技術(shù)以及朗訊科技的PAC/EPAC/MPAC技術(shù)等。下面選擇MPEG-2 AAC技術(shù)、杜比公司的AC-3技術(shù)進(jìn)行具體的說(shuō)明。
MPEG-1技術(shù)和MPEG-2 BC技術(shù)是主要用于單聲道及立體聲音頻信號(hào)的高音質(zhì)編碼技術(shù),隨著對(duì)在較低碼率下達(dá)到較高編碼質(zhì)量的多聲道音頻編碼的需求的日益增長(zhǎng),由于MPEG-2 BC編碼技術(shù)強(qiáng)調(diào)與MPEG-1技術(shù)的后向兼容性,因此無(wú)法以低于540kbps的碼率實(shí)現(xiàn)五聲道的高音質(zhì)編碼。針對(duì)這一不足,提出了MPEG-2 AAC技術(shù),該技術(shù)可采用320kbps的速率對(duì)五聲道信號(hào)實(shí)現(xiàn)較高質(zhì)量的編碼。
圖1給出了MPEG-2 AAC編碼器的方框圖,該編碼器包括增益控制器101、濾波器組102、時(shí)域噪聲整形模塊103、強(qiáng)度/耦合模塊104、心理聲學(xué)模型、二階后向自適應(yīng)預(yù)測(cè)器105、和/差立體聲模塊106、比特分配和量化編碼模塊107以及比特流復(fù)用模塊108,其中比特分配和量化編碼模塊107進(jìn)一步包括壓縮比/失真處理控制器、尺度因子模塊、非均勻量化器和熵編碼模塊。
濾波器組102采用改進(jìn)的離散余弦變換(MDCT),其分辨率是信號(hào)自適應(yīng)的,即對(duì)于穩(wěn)態(tài)信號(hào)采用2048點(diǎn)MDCT變換,而對(duì)于瞬態(tài)信號(hào)則采用256點(diǎn)MDCT變換;這樣,對(duì)于48kHz采樣的信號(hào),其最大頻率分辨率為23Hz,最大時(shí)間分辨率為2.6ms。同時(shí)在濾波器組102中可以使用正弦窗和Kaiser-Bessel窗,當(dāng)輸入信號(hào)的諧波間隔小于140Hz時(shí)使用正弦窗,當(dāng)輸入信號(hào)中很強(qiáng)的成分間隔大于220Hz時(shí)使用Kaiser-Bessel窗。
音頻信號(hào)經(jīng)過(guò)增益控制器101后進(jìn)入濾波器組102,根據(jù)不同的信號(hào)進(jìn)行濾波,然后通過(guò)時(shí)域噪聲整形模塊103對(duì)濾波器組102輸出的頻譜系數(shù)進(jìn)行處理,時(shí)域噪聲整形技術(shù)是在頻域上對(duì)頻譜系數(shù)進(jìn)行線性預(yù)測(cè)分析,然后依據(jù)上述分析控制量化噪聲在時(shí)域上的形狀,以此達(dá)到控制預(yù)回聲的目的。
強(qiáng)度/耦合模塊104是用于對(duì)信號(hào)強(qiáng)度的立體聲編碼,由于對(duì)于高頻段(大于2kHz)的信號(hào),聽(tīng)覺(jué)的方向感與有關(guān)信號(hào)強(qiáng)度的變化(信號(hào)包絡(luò))有關(guān),而與信號(hào)的波形無(wú)關(guān),即恒包絡(luò)信號(hào)對(duì)聽(tīng)覺(jué)方向感無(wú)影響,因此可利用這一特點(diǎn)以及多聲道間的相關(guān)信息,將若干聲道合成一個(gè)共同聲道進(jìn)行編碼,這就形成了強(qiáng)度/耦合技術(shù)。
二階后向自適應(yīng)預(yù)測(cè)器105用于消除穩(wěn)態(tài)信號(hào)的冗余,提高編碼效率。和差立體聲(M/S)模塊106是針對(duì)聲道對(duì)進(jìn)行操作,聲道對(duì)是指諸如雙聲道信號(hào)或多聲道信號(hào)中的左右聲道或左右環(huán)繞聲道的兩個(gè)聲道。M/S模塊106利用聲道對(duì)中兩個(gè)聲道之間的相關(guān)性以達(dá)到減少碼率和提高編碼效率的效果。比特分配和量化編碼模塊107是通過(guò)一個(gè)嵌套循環(huán)過(guò)程實(shí)現(xiàn)的,其中非均勻量化器是進(jìn)行有損編碼,而熵編碼模塊是進(jìn)行無(wú)損編碼,這樣可以去除冗余和減少相關(guān)。嵌套循環(huán)包括內(nèi)層循環(huán)和外層循環(huán),其中內(nèi)層循環(huán)調(diào)整非均勻量化器的步長(zhǎng)直到所提供的比特用完,外層循環(huán)則利用量化噪聲與掩蔽閾值的比來(lái)估計(jì)信號(hào)的編碼質(zhì)量。最后經(jīng)過(guò)編碼的信號(hào)通過(guò)比特流復(fù)用模塊108形成編碼的音頻流輸出。
在采樣率可伸縮的情況下,輸入信號(hào)同時(shí)進(jìn)行四頻段多相位濾波器組(PQF)中產(chǎn)生四個(gè)等帶寬的頻帶,每個(gè)頻帶利用MDCT產(chǎn)生256個(gè)頻譜系數(shù),總共有1024個(gè)。在每個(gè)頻帶內(nèi)都使用增益控制器101。而在解碼器中可以忽略高頻的PQF頻帶得到低采樣率信號(hào)。
圖2給出了對(duì)應(yīng)的MPEG-2 AAC解碼器的方框示意圖。該解碼器包括比特流解復(fù)用模塊201、無(wú)損解碼模塊202、逆量化器203、尺度因子模塊204、和/差立體聲(M/S)模塊205、預(yù)測(cè)模塊206、強(qiáng)度/耦合模塊207、時(shí)域噪聲整形模塊208、濾波器組209和增益控制模塊210。編碼的音頻流經(jīng)過(guò)比特流解復(fù)用模塊201進(jìn)行解復(fù)用,得到相應(yīng)的數(shù)據(jù)流和控制流。上述信號(hào)通過(guò)無(wú)損解碼模塊202的解碼后,得到尺度因子的整數(shù)表示和信號(hào)譜的量化值。逆量化器203是一組通過(guò)壓擴(kuò)函數(shù)實(shí)現(xiàn)的非均勻量化器組,用于將整數(shù)量化值轉(zhuǎn)換為重建譜。由于編碼器中的尺度因子模塊是將當(dāng)前尺度因子與前一尺度因子進(jìn)行差分,然后將差分值采用Huffman編碼,因此解碼器中的尺度因子模塊204進(jìn)行Huffman解碼可得到相應(yīng)的差分值,再恢復(fù)出真實(shí)的尺度因子。M/S模塊205在邊信息的控制下將和差聲道轉(zhuǎn)換成左右聲道。由于在編碼器中采用二階后向自適應(yīng)預(yù)測(cè)器105消除穩(wěn)態(tài)信號(hào)的冗余并提高編碼效率,因此在解碼器中通過(guò)預(yù)測(cè)模塊206進(jìn)行預(yù)測(cè)解碼。強(qiáng)度/耦合模塊207在邊信息的控制下進(jìn)行強(qiáng)度/耦合解碼,然后輸出到時(shí)域噪聲整形模塊208中進(jìn)行時(shí)域噪聲整形解碼,最后通過(guò)濾波器組209進(jìn)行綜合濾波,濾波器組209采用逆向改進(jìn)離散余弦變換(IMDCT)技術(shù)。
對(duì)于采樣頻率可伸縮的情況,可通過(guò)增益控制模塊210忽略高頻的PQF頻帶,以得到低采樣率信號(hào)。
MPEG-2 AAC編解碼技術(shù)適用于中高碼率的音頻信號(hào),但對(duì)低碼率或甚低碼率的音頻信號(hào)的編碼質(zhì)量較差;同時(shí)該編解碼技術(shù)涉及的編解碼模塊較多,實(shí)現(xiàn)的復(fù)雜度較高,不利于實(shí)時(shí)實(shí)現(xiàn)。
圖3給出了采用杜比AC-3技術(shù)的編碼器的結(jié)構(gòu)示意圖,包括暫態(tài)信號(hào)檢測(cè)模塊301、改進(jìn)的離散余弦變換濾波器MDCT 302、頻譜包絡(luò)/指數(shù)編碼模塊303、尾數(shù)編碼模塊304、前向-后向自適應(yīng)感知模型305、參數(shù)比特分配模塊306和比特流復(fù)用模塊307。
音頻信號(hào)通過(guò)暫態(tài)信號(hào)檢測(cè)模塊301判別是穩(wěn)態(tài)信號(hào)還是瞬態(tài)信號(hào),同時(shí)通過(guò)信號(hào)自適應(yīng)MDCT濾波器組302將時(shí)域數(shù)據(jù)映射到頻域數(shù)據(jù),其中512點(diǎn)的長(zhǎng)窗應(yīng)用于穩(wěn)態(tài)信號(hào),一對(duì)短窗應(yīng)用于瞬態(tài)信號(hào)。
頻譜包絡(luò)/指數(shù)編碼模塊303根據(jù)碼率和頻率分辨率的要求采用三種模式對(duì)信號(hào)的指數(shù)部分進(jìn)行編碼,分別是D15、D25和D45編碼模式。AC-3技術(shù)在頻率上對(duì)頻譜包絡(luò)采取差分編碼,因?yàn)樽疃嘈枰?增量,每個(gè)增量代表6dB的電平變化,對(duì)于第一個(gè)直流項(xiàng)采用絕對(duì)值編碼,其余指數(shù)就采用差分編碼。在D15頻譜包絡(luò)指數(shù)編碼中,每個(gè)指數(shù)大約需要2.33比特,3個(gè)差分組在一個(gè)7比特的字長(zhǎng)中編碼,D15編碼模式通過(guò)犧牲時(shí)間分辨率而提供精細(xì)的頻率分辨率。由于只是對(duì)相對(duì)平穩(wěn)的信號(hào)才需要精細(xì)的頻率分辨率,而這樣的信號(hào)在許多塊上的頻譜保持相對(duì)恒定,因此,對(duì)于穩(wěn)態(tài)信號(hào),D15偶爾被傳送,通常是每6個(gè)聲音塊(一個(gè)數(shù)據(jù)幀)的頻譜包絡(luò)被傳送一次。當(dāng)信號(hào)頻譜不穩(wěn)定時(shí),需要常更新頻譜估計(jì)值。估計(jì)值采用較小的頻率分辨率編碼,通常使用D25和D45編碼模式。D25編碼模式提供了合適的頻率分辨率和時(shí)間分辨率,每隔一個(gè)頻率系數(shù)就進(jìn)行差分編碼,這樣每個(gè)指數(shù)大約需要1.15比特。當(dāng)頻譜在2至3個(gè)塊上都是穩(wěn)定的,然后突然變化時(shí),可以采用D25編碼模式。D45編碼模式是每隔三個(gè)頻率系數(shù)進(jìn)行差分編碼,這樣每個(gè)指數(shù)大約需要0.58比特。D45編碼模式提供了很高的時(shí)間分辨率和較低的頻率分辨率,所以一般應(yīng)用在對(duì)瞬態(tài)信號(hào)的編碼中。
前向-后向自適應(yīng)感知模型305用于估計(jì)每幀信號(hào)的掩蔽閾值。其中前向自適應(yīng)部分僅應(yīng)用在編碼器端,在碼率的限制下,通過(guò)迭代循環(huán)估計(jì)一組最佳的感知模型參數(shù),然后這些參數(shù)被傳遞到后向自適應(yīng)部分以估計(jì)出每幀的掩蔽閾值。后向自適應(yīng)部分同時(shí)應(yīng)用在編碼器端和解碼器端。
參數(shù)比特分配模塊306根據(jù)掩蔽準(zhǔn)則分析音頻信號(hào)的頻譜包絡(luò),以確定給每個(gè)尾數(shù)分配的比特?cái)?shù)。該模塊306利用一個(gè)比特池對(duì)所有聲道進(jìn)行全局比特分配。在尾數(shù)編碼模塊304中進(jìn)行編碼時(shí),從比特池中循環(huán)取出比特分配給所有的聲道,根據(jù)可以獲得的比特?cái)?shù)來(lái)調(diào)整尾數(shù)的量化。為達(dá)到壓縮編碼的目的,AC-3編碼器還采用高頻耦合的技術(shù),將被耦合信號(hào)的高頻部分按照人耳臨界帶寬劃分成18個(gè)子頻段,然后選擇某些聲道從某個(gè)子帶開(kāi)始進(jìn)行耦合。最后通過(guò)比特流復(fù)用模塊307形成AC-3音頻流輸出。
圖4給出了采用杜比AC-3解碼的流程示意圖。首先輸入經(jīng)過(guò)AC-3編碼器編碼的比特流,對(duì)比特流進(jìn)行數(shù)據(jù)幀同步和誤碼檢測(cè),如果檢測(cè)到一個(gè)數(shù)據(jù)誤碼,則進(jìn)行誤碼掩蓋或弱音處理。然后對(duì)比特流進(jìn)行解包,獲得主信息和邊信息,再進(jìn)行指數(shù)解碼。在進(jìn)行指數(shù)解碼時(shí),需要有兩個(gè)邊信息一是打包的指數(shù)數(shù)目;一個(gè)是所采用的指數(shù)策略,如D15、D25或D45模式。已經(jīng)解碼的指數(shù)和比特分配邊信息再進(jìn)行比特分配,指出每個(gè)打包的尾數(shù)所用的比特?cái)?shù),得到一組比特分配指針,每個(gè)比特分配指針對(duì)應(yīng)一個(gè)編碼的尾數(shù)。比特分配指針指出用于尾數(shù)的量化器以及在碼流中每個(gè)尾數(shù)占用的比特?cái)?shù)。對(duì)單個(gè)編碼的尾數(shù)值進(jìn)行解量化,將其轉(zhuǎn)變成一個(gè)解量化的值,占用零比特的尾數(shù)被恢復(fù)成零,或者在抖動(dòng)標(biāo)志的控制下用一個(gè)隨機(jī)抖動(dòng)值代替。然后進(jìn)行解耦合的操作,解耦合是從公共耦合聲道和耦合因子中恢復(fù)出被耦合聲道的高頻部分,包括指數(shù)和尾數(shù)。如果在編碼端采用2/0模式編碼時(shí),會(huì)對(duì)某子帶采用矩陣處理,那么在解碼端需通過(guò)矩陣恢復(fù)將該子帶的和差聲道值轉(zhuǎn)換成左右聲道值。在碼流中包含有每個(gè)音頻塊的動(dòng)態(tài)范圍控制值,將該值進(jìn)行動(dòng)態(tài)范圍壓縮,以改變系數(shù)的幅度,包括指數(shù)和尾數(shù)。將頻域系數(shù)進(jìn)行逆變換,轉(zhuǎn)變成時(shí)域樣本,然后對(duì)時(shí)域樣本進(jìn)行加窗處理,相鄰的塊進(jìn)行重疊相加,重構(gòu)出PCM音頻信號(hào)。當(dāng)解碼輸出的聲道數(shù)小于編碼比特流中的聲道數(shù)時(shí),還需要對(duì)音頻信號(hào)進(jìn)行下混處理,最后輸出PCM流。
杜比AC-3編碼技術(shù)主要針對(duì)高比特率多聲道環(huán)繞聲的信號(hào),但是當(dāng)5.1聲道的編碼比特率低于384kbps時(shí),其編碼效果較差;而且對(duì)于單聲道和雙聲道立體聲的編碼效率也較低。
綜上,現(xiàn)有的編解碼技術(shù)無(wú)法全面解決從甚低碼率、低碼率到高碼率音頻信號(hào)以及單聲道、雙聲道信號(hào)的編解碼質(zhì)量,實(shí)現(xiàn)較為復(fù)雜。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題在于提供一種增強(qiáng)音頻編/解碼的裝置及方法,以解決現(xiàn)有技術(shù)對(duì)于較低碼率音頻信號(hào)的編碼效率低、質(zhì)量差的問(wèn)題。
本發(fā)明的增強(qiáng)音頻編碼裝置,包括心理聲學(xué)分析模塊、時(shí)頻映射模塊、量化和熵編碼模塊以及比特流復(fù)用模塊、信號(hào)性質(zhì)分析模塊和多分辨率分析模塊;其中所述信號(hào)性質(zhì)分析模塊,用于對(duì)輸入音頻信號(hào)進(jìn)行類(lèi)型分析,并輸出到所述心理聲學(xué)分析模塊和所述時(shí)頻映射模塊,同時(shí)將信號(hào)類(lèi)型分析結(jié)果信息輸出到所述比特流復(fù)用模塊;所述心理聲學(xué)分析模塊,用于計(jì)算音頻信號(hào)的掩蔽閾值和信掩比,并輸出到所述量化和熵編碼模塊;所述時(shí)頻映射模塊,用于將時(shí)域音頻信號(hào)轉(zhuǎn)變成頻域系數(shù),并輸出到多分辨率分析模塊;所述多分辨率分析模塊,用于根據(jù)所述信號(hào)性質(zhì)分析模塊輸出的信號(hào)類(lèi)型分析結(jié)果,對(duì)快變類(lèi)型信號(hào)的頻域系數(shù)進(jìn)行多分辨率分析,并輸出到量化和熵編碼模塊;所述量化和熵編碼模塊,在所述心理聲學(xué)分析模塊輸出的信掩比的控制下,用于對(duì)頻域系數(shù)進(jìn)行量化和熵編碼,并輸出到所述比特流復(fù)用模塊;所述比特流復(fù)用模塊用于將接收到的數(shù)據(jù)進(jìn)行復(fù)用,形成音頻編碼碼流。
本發(fā)明的增強(qiáng)音頻解碼裝置,包括比特流解復(fù)用模塊、熵解碼模塊、逆量化器組、頻率-時(shí)間映射模塊和多分辨率綜合模塊;所述比特流解復(fù)用模塊用于對(duì)壓縮音頻數(shù)據(jù)流進(jìn)行解復(fù)用,并向所述熵解碼模塊和所述多分辨率綜合模塊輸出相應(yīng)的數(shù)據(jù)信號(hào)和控制信號(hào);所述熵解碼模塊用于對(duì)上述信號(hào)進(jìn)行解碼處理,恢復(fù)譜的量化值,輸出到所述逆量化器組;所述逆量化器組用于重建逆量化譜,并輸出到所述到多分辨率綜合模塊;所述多分辨率綜合模塊用于對(duì)逆量化譜進(jìn)行多分辨率綜合,并輸出到所述頻率-時(shí)間映射模塊;所述頻率-時(shí)間映射模塊用于對(duì)譜系數(shù)進(jìn)行頻率-時(shí)間映射,輸出時(shí)域音頻信號(hào)。
本發(fā)明適用于多種采樣率、聲道配置的音頻信號(hào)的高保真壓縮編碼,可以支持采樣率為8kHz到192kHz之間的音頻信號(hào);可支持所有可能的聲道配置;并且支持范圍很寬的目標(biāo)碼率的音頻編/解碼。
圖1是MPEG-2 AAC編碼器的方框圖;圖2是MPEG-2 AAC解碼器的方框圖;
圖3是采用杜比AC-3技術(shù)的編碼器的結(jié)構(gòu)示意圖;圖4是采用杜比AC-3技術(shù)的解碼流程示意圖;圖5是本發(fā)明編碼裝置的結(jié)構(gòu)示意圖;圖6是采用Harr小波基小波變換的濾波結(jié)構(gòu)示意圖;圖7是采用Harr小波基小波變換得到的時(shí)頻劃分示意圖;圖8是本發(fā)明解碼裝置的結(jié)構(gòu)示意圖;圖9是本發(fā)明編碼裝置的實(shí)施例一的結(jié)構(gòu)示意圖;圖10是本發(fā)明解碼裝置的實(shí)施例一的結(jié)構(gòu)示意圖;圖11是本發(fā)明編碼裝置的實(shí)施例二的結(jié)構(gòu)示意圖;圖12是本發(fā)明解碼裝置的實(shí)施例二的結(jié)構(gòu)示意圖;圖13是本發(fā)明編碼裝置的實(shí)施例三的結(jié)構(gòu)示意圖;圖14是本發(fā)明解碼裝置的實(shí)施例三的結(jié)構(gòu)示意圖;圖15是本發(fā)明編碼裝置的實(shí)施例四的結(jié)構(gòu)示意圖;圖16是本發(fā)明解碼裝置的實(shí)施例四的結(jié)構(gòu)示意圖;圖17是本發(fā)明編碼裝置的實(shí)施例五的結(jié)構(gòu)示意圖;圖18是本發(fā)明解碼裝置的實(shí)施例五的結(jié)構(gòu)示意圖;圖19是本發(fā)明編碼裝置的實(shí)施例六的結(jié)構(gòu)示意圖;圖20是本發(fā)明解碼裝置的實(shí)施例六的結(jié)構(gòu)示意圖;圖21是本發(fā)明編碼裝置的實(shí)施例七的結(jié)構(gòu)示意圖;圖22是本發(fā)明解碼裝置的實(shí)施例七的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
圖1至圖4是現(xiàn)有技術(shù)的幾種編碼器的結(jié)構(gòu)示意圖,已在背景技術(shù)中進(jìn)行了介紹,此處不再贅述。
需要說(shuō)明的是為方便、清楚地說(shuō)明本發(fā)明,下述編解碼裝置的具體實(shí)施例是采用對(duì)應(yīng)的方式說(shuō)明的,但并不限定編碼裝置與解碼裝置必須是一一對(duì)應(yīng)的。
如圖5所示,本發(fā)明提供的音頻編碼裝置包括信號(hào)性質(zhì)分析模塊50、心理聲學(xué)分析模塊51、時(shí)頻映射模塊52、多分辨率分析模塊53、量化和熵編碼模塊54以及比特流復(fù)用模塊55;其中信號(hào)性質(zhì)分析模塊50用于對(duì)輸入音頻信號(hào)進(jìn)行類(lèi)型分析,將音頻信號(hào)輸出到心理聲學(xué)分析模塊51和時(shí)頻映射模塊52,同時(shí)將信號(hào)類(lèi)型分析結(jié)果輸出到比特流復(fù)用模塊55;心理聲學(xué)分析模塊51用于計(jì)算輸入音頻信號(hào)的掩蔽閾值和信掩比,輸出到量化和熵編碼模塊54;時(shí)頻映射模塊52用于將時(shí)域音頻信號(hào)轉(zhuǎn)變成頻域系數(shù),并輸出到多分辨率分析模塊53;多分辨率分析模塊53根據(jù)心理聲學(xué)分析模塊51輸出的信號(hào)類(lèi)型分析結(jié)果,用于對(duì)快變類(lèi)型信號(hào)的頻域系數(shù)進(jìn)行多分辨率分析,并輸出到量化和熵編碼模塊54;量化和熵編碼模塊54在心理聲學(xué)分析模塊51輸出的信掩比的控制下,用于對(duì)頻域系數(shù)進(jìn)行量化和熵編碼,并輸出到比特流復(fù)用模塊55;比特流復(fù)用模塊55用于將接收到的數(shù)據(jù)進(jìn)行復(fù)用,形成音頻編碼碼流。
數(shù)字音頻信號(hào)在信號(hào)性質(zhì)分析模塊50中進(jìn)行信號(hào)類(lèi)型分析,將音頻信號(hào)的類(lèi)型信息輸出到比特流復(fù)用模塊55;并同時(shí)將音頻信號(hào)輸出到所述心理聲學(xué)分析模塊51和所述時(shí)頻映射模塊52中,一方面在心理聲學(xué)分析模塊51中計(jì)算該幀音頻信號(hào)的掩蔽閾值和信掩比,然后將信掩比作為控制信號(hào)傳送給量化和熵編碼模塊54;另一方面時(shí)域的音頻信號(hào)通過(guò)時(shí)頻映射模塊52轉(zhuǎn)變成頻域系數(shù);上述頻域系數(shù)在多分辨率分析模塊53中,對(duì)快變信號(hào)進(jìn)行多分辨率分析,提高快變信號(hào)的時(shí)間分辨率,并將結(jié)果輸出到量化和熵編碼模塊54中;在心理聲學(xué)分析模塊51輸出的信掩比的控制下,在量化和熵編碼模塊54中進(jìn)行量化和熵編碼,經(jīng)過(guò)編碼后的數(shù)據(jù)和控制信號(hào)在比特流復(fù)用模塊55進(jìn)行復(fù)用,形成增強(qiáng)音頻編碼的碼流。
下面對(duì)上述音頻編碼裝置的各個(gè)組成模塊進(jìn)行具體詳細(xì)地說(shuō)明。
信號(hào)性質(zhì)分析模塊50,用于輸入的音頻信號(hào)進(jìn)行信號(hào)類(lèi)型分析,并將音頻信號(hào)的類(lèi)型信息輸出到比特流復(fù)用模塊55;同時(shí)將音頻信號(hào)輸出到心理聲學(xué)分析模塊51和時(shí)頻映射模塊52。
信號(hào)性質(zhì)分析模塊50基于自適應(yīng)閾值和波形預(yù)測(cè)進(jìn)行前、后向掩蔽效應(yīng)分析來(lái)確定信號(hào)的類(lèi)型為緩變信號(hào)還是快變信號(hào),若是快變類(lèi)型信號(hào),則繼續(xù)計(jì)算突變成分的相關(guān)參數(shù)信息,如突變信號(hào)發(fā)生的位置以及突變信號(hào)的強(qiáng)度等。
心理聲學(xué)分析模塊51主要用于計(jì)算輸入音頻信號(hào)的掩蔽閾值、信掩比和感知熵。根據(jù)心理聲學(xué)分析模塊51計(jì)算出的感知熵可動(dòng)態(tài)地分析當(dāng)前信號(hào)幀進(jìn)行透明編碼所需的比特?cái)?shù),從而調(diào)整幀間的比特分配。心理聲學(xué)分析模塊51輸出各個(gè)子帶的信掩比到量化和熵編碼模塊54,對(duì)其進(jìn)行控制。
時(shí)頻映射模塊52用于實(shí)現(xiàn)音頻信號(hào)從時(shí)域信號(hào)到頻域系數(shù)的變換,由濾波器組構(gòu)成,具體可以是離散傅立葉變換(DFT)濾波器組、離散余弦變換(DCT)濾波器組、修正離散余弦變換(MDCT)濾波器組、余弦調(diào)制濾波器組、小波變換濾波器組等。通過(guò)時(shí)頻映射得到的頻域系數(shù)被輸出到量化和熵編碼模塊54中,進(jìn)行量化和編碼處理。
對(duì)于快變類(lèi)型信號(hào),為有效克服編碼過(guò)程中產(chǎn)生的預(yù)回聲現(xiàn)象,提高編碼質(zhì)量,本發(fā)明編碼裝置通過(guò)多分辨率分析模塊53來(lái)提高編碼快變信號(hào)的時(shí)間分辨率。時(shí)頻映射模塊52輸出的頻域系數(shù)輸入到多分辨率分析模塊53中,如果是快變類(lèi)型信號(hào),則進(jìn)行頻域小波變換或頻域修正離散余弦變換(MDCT),獲得對(duì)頻域系數(shù)的多分辨率表示,輸出到量化和熵編碼模塊54中。如果是緩變類(lèi)型信號(hào),則對(duì)頻域系數(shù)不進(jìn)行處理,直接輸出到量化和熵編碼模塊54。
多分辨率分析模塊53包括頻域系數(shù)變換模塊和重組模塊,其中頻域系數(shù)變換模塊用于將頻域系數(shù)變換為時(shí)頻平面系數(shù);重組模塊用于將時(shí)頻平面系數(shù)按照一定的規(guī)則進(jìn)行重組。頻域系數(shù)變換模塊可采用頻域小波變換濾波器組、頻域MDCT變換濾波器組等。
量化和熵編碼模塊54進(jìn)一步包括了非線性量化器組和編碼器,其中量化器可以是標(biāo)量量化器或矢量量化器。矢量量化器進(jìn)一步分為無(wú)記憶矢量量化器和有記憶矢量量化器兩大類(lèi)。對(duì)于無(wú)記憶矢量量化器,每個(gè)輸入矢量是獨(dú)立進(jìn)行量化的,與以前的各矢量無(wú)關(guān);有記憶矢量量化器是在量化一個(gè)矢量時(shí)考慮以前的矢量,即利用了矢量之間的相關(guān)性。主要的無(wú)記憶矢量量化器包括全搜索矢量量化器、樹(shù)搜索矢量量化器、多級(jí)矢量量化器、增益/波形矢量量化器和分離均值矢量量化器;主要的有記憶矢量量化器包括預(yù)測(cè)矢量量化器和有限狀態(tài)矢量量化器。
如果采用標(biāo)量量化器,則非線性量化器組進(jìn)一步包括M個(gè)子帶量化器。在每個(gè)子帶量化器中主要利用尺度因子進(jìn)行量化,具體是對(duì)M個(gè)尺度因子帶中所有的頻域系數(shù)進(jìn)行非線性壓縮,再利用尺度因子對(duì)該子帶的頻域系數(shù)進(jìn)行量化,得到整數(shù)表示的量化譜輸出到編碼器,將每幀信號(hào)中的第一個(gè)尺度因子作為公共尺度因子輸出到比特流復(fù)用模塊55,其它尺度因子與其前一個(gè)尺度因子進(jìn)行差分處理后輸出到編碼器。
上述步驟中的尺度因子是不斷變化的值,按照比特分配策略來(lái)調(diào)整。本發(fā)明提供了一種全局感知失真最小的比特分配策略,具體如下首先,初始化每個(gè)子帶量化器,選擇合適的尺度因子,使所有子帶中的譜系數(shù)的量化值為0。此時(shí)每個(gè)子帶的量化噪聲等于每個(gè)子帶的能量值,每個(gè)子帶的噪聲掩蔽比NMR等于它的信掩比SMR,量化所消耗的比特?cái)?shù)為0,剩余比特?cái)?shù)Bl等于目標(biāo)比特?cái)?shù)B。
其次,查找噪聲掩蔽比NMR最大的子帶,若最大噪聲掩蔽比NMR小于等于1,則尺度因子不變,輸出分配結(jié)果,比特分配過(guò)程結(jié)束;否則,將對(duì)應(yīng)的子帶量化器的尺度因子減小一個(gè)單位,然后計(jì)算該子帶所需增加的比特?cái)?shù)ΔBi(Qi)。若該子帶的剩余比特?cái)?shù)Bl≥ΔBi(Qi),則確認(rèn)此次尺度因子的修改,并將剩余比特?cái)?shù)Bl減去ΔBi(Qi),重新計(jì)算該子帶的噪聲掩蔽比NMR,然后繼續(xù)查找噪聲掩蔽比NMR最大的子帶,重復(fù)執(zhí)行后續(xù)步驟。如果該子帶的剩余比特?cái)?shù)Bl<ΔBi(Qi),則取消此次修改,保留上一次的尺度因子以及剩余比特?cái)?shù),最后輸出分配結(jié)果,比特分配過(guò)程結(jié)束。
如果采用矢量量化器,則頻域系數(shù)組成多個(gè)M維矢量輸入到非線性量化器組中,對(duì)于每個(gè)M維矢量都根據(jù)平整因子進(jìn)行譜平整,即縮小譜的動(dòng)態(tài)范圍,然后由矢量量化器根據(jù)主觀感知距離測(cè)度準(zhǔn)則在碼書(shū)中找到與待量化矢量距離最小的碼字,將對(duì)應(yīng)的碼字索引傳遞給編碼器。平整因子是根據(jù)矢量量化的比特分配策略調(diào)整的,而矢量量化的比特分配則根據(jù)不同子帶間感知重要度來(lái)控制。
在經(jīng)過(guò)上述量化處理后,利用熵編碼技術(shù)進(jìn)一步去除量化后的系數(shù)以及邊信息的統(tǒng)計(jì)冗余。熵編碼是一種信源編碼技術(shù),其基本思想是對(duì)出現(xiàn)概率較大的符號(hào)給予較短長(zhǎng)度的碼字,而對(duì)出現(xiàn)概率小的符號(hào)給予較長(zhǎng)的碼字,這樣平均碼字的長(zhǎng)度最短。根據(jù)Shannon的無(wú)噪聲編碼定理,如果傳輸?shù)腘個(gè)源消息的符號(hào)是獨(dú)立的,那么使用適當(dāng)?shù)淖冮L(zhǎng)度編碼,碼字的平均長(zhǎng)度n將滿足[H(x)log2(D)]≤n‾<[H(x)log2(D)+1N],]]>其中H(x)表示信源的熵,x表示符號(hào)變量。由于熵H(x)是平均碼字長(zhǎng)度的最短極限,上述公式表明此時(shí)碼字的平均長(zhǎng)度很接近于它的下限熵H(x),因此這種變長(zhǎng)度編碼技術(shù)又成為“熵編碼”。熵編碼主要有Huffman編碼、算術(shù)編碼或游程編碼等方法,本發(fā)明中的熵編碼均可采用上述編碼方法的任一種。
經(jīng)過(guò)標(biāo)量量化器量化后輸出的量化譜和差分處理后的尺度因子在編碼器中進(jìn)行熵編碼,得到碼書(shū)序號(hào)、尺度因子編碼值和無(wú)損編碼量化譜,再對(duì)碼書(shū)序號(hào)進(jìn)行熵編碼,得到碼書(shū)序號(hào)編碼值,然后將尺度因子編碼值、碼書(shū)序號(hào)編碼值和無(wú)損編碼量化譜輸出到比特流復(fù)用模塊55中。
經(jīng)過(guò)矢量量化器量化后得到的碼字索引在編碼器中進(jìn)行一維或多維熵編碼,得到碼字索引的編碼值,然后將碼字索引的編碼值輸出到比特流復(fù)用模塊55中。
基于上述編碼器的編碼方法,具體包括對(duì)輸入音頻信號(hào)進(jìn)行信號(hào)類(lèi)型分析;計(jì)算音頻信號(hào)的信掩比;對(duì)音頻信號(hào)進(jìn)行時(shí)頻映射,獲得音頻信號(hào)的頻域系數(shù);對(duì)頻域系數(shù)進(jìn)行多分辨率分析以及量化和熵編碼;將信號(hào)類(lèi)型分析結(jié)果和編碼后的音頻碼流進(jìn)行復(fù)用,得到壓縮音頻碼流。
分析信號(hào)類(lèi)型是基于自適應(yīng)閾值和波形預(yù)測(cè)進(jìn)行前、后向掩蔽效應(yīng)分析來(lái)確定的,具體步驟是將輸入的音頻數(shù)據(jù)分解成幀;把輸入幀分解成多個(gè)子幀,并查找各個(gè)子幀上PCM數(shù)據(jù)絕對(duì)值的局部最大點(diǎn);在各子幀的局部最大點(diǎn)中選出子幀峰值;對(duì)某個(gè)子幀峰值,利用該子幀前面的多個(gè)(典型的可取3個(gè))子幀峰值預(yù)測(cè)相對(duì)該子幀前向延遲的多個(gè)(典型的可取4個(gè))子幀的典型樣本值;計(jì)算該子幀峰值與所預(yù)測(cè)出的典型樣本值的差值和比值;如果預(yù)測(cè)差值和比值都大于設(shè)定的閾值,則判斷該子幀存在突躍信號(hào),確認(rèn)該子幀具備后向掩蔽預(yù)回聲能力的局部最大峰點(diǎn),如果在該子幀前端與掩蔽峰點(diǎn)前2.5ms處之間存在一個(gè)峰值足夠小的子幀,則判斷該幀信號(hào)屬于快變類(lèi)型信號(hào);如果預(yù)測(cè)差值和比值不大于設(shè)定的閾值,則重復(fù)上述步驟直到判斷出該幀信號(hào)是快變類(lèi)型信號(hào)或者到達(dá)最后一個(gè)子幀,如果到達(dá)最后一個(gè)子幀仍未判斷出該幀信號(hào)是快變類(lèi)型信號(hào),則該幀信號(hào)屬于緩變類(lèi)型信號(hào)。
對(duì)時(shí)域音頻信號(hào)進(jìn)行時(shí)頻變換的方法有很多,如離散傅立葉變換(DFT)、離散余弦變換(DCT)、修正離散余弦變換(MDCT)、余弦調(diào)制濾波器組、小波變換等。下面以修正離散余弦變換MDCT和余弦調(diào)制濾波為例說(shuō)明時(shí)頻映射的過(guò)程。
對(duì)于采用修正離散余弦變換MDCT進(jìn)行時(shí)頻變換的情況,首先選取前一幀M個(gè)樣本和當(dāng)前幀M個(gè)樣本的時(shí)域信號(hào),再對(duì)這兩幀共2M個(gè)樣本的時(shí)域信號(hào)進(jìn)行加窗操作,然后對(duì)經(jīng)過(guò)加窗后的信號(hào)進(jìn)行MDCT變換,從而獲得M個(gè)頻域系數(shù)。
MDCT分析濾波器的脈沖響應(yīng)為hk(n)=w(n)2Mcos[(2n+M+1)(2k+1)π4M],]]>則MDCT變換為X(k)=Σn=02M-1x(n)hk(n)]]>0≤k≤M-1,其中w(n)為窗函數(shù);x(n)為MDCT變換的輸入時(shí)域信號(hào);X(k)為MDCT變換的輸出頻域信號(hào)。
為滿足信號(hào)完全重構(gòu)的條件,MDCT變換的窗函數(shù)w(n)必須滿足以下兩個(gè)條件w(2M-1-n)=w(n)且w2(n)+w2(n+M)=1。
在實(shí)際中,可選用Sine窗作為窗函數(shù)。當(dāng)然,也可以通過(guò)使用雙正交變換,用特定的分析濾波器和合成濾波器修改上述對(duì)窗函數(shù)的限制。
對(duì)于采用余弦調(diào)制濾波進(jìn)行時(shí)頻變換的情況,則首先選取前一幀M個(gè)樣本和當(dāng)前幀M個(gè)樣本的時(shí)域信號(hào),再對(duì)這兩幀共2M個(gè)樣本的時(shí)域信號(hào)進(jìn)行加窗操作,然后對(duì)經(jīng)過(guò)加窗后的信號(hào)進(jìn)行余弦調(diào)制變換,從而獲得M個(gè)頻域系數(shù)。
傳統(tǒng)的余弦調(diào)制濾波技術(shù)的沖擊響應(yīng)為hk(n)=2pa(n)cos(πM(k+0.5)(n-D2)+θk),]]>n=0,1,...,Nh-1fk(n)=2ps(n)cos(πM(k+0.5)(n-D2)-θk),]]>n=0,1,...,Nf-1
其中0≤k<M-1,0≤n<2KM-1,K為大于零的整數(shù),θk=(-1)kπ4.]]>假設(shè)M子帶余弦調(diào)制濾波器組的分析窗(分析原型濾波器)pa(n)的沖擊響應(yīng)長(zhǎng)度為Na,綜合窗(綜合原型濾波器)ps(n)的沖擊響應(yīng)長(zhǎng)度為Ns。當(dāng)分析窗和綜合窗相等時(shí),即pa(n)=ps(n),且Na=Ns,由上面兩式所表示的余弦調(diào)制濾波器組為正交濾波器組,此時(shí)矩陣H和F([H]n,k=hk(n),[F]n,k=fk(n))為正交變換矩陣。為獲得線性相位濾波器組,進(jìn)一步規(guī)定對(duì)稱(chēng)窗滿足pa(2KM-1-n)=pa(n)。為保證正交和雙正交系統(tǒng)的完全重構(gòu)性,窗函數(shù)還需滿足一定的條件,詳見(jiàn)文獻(xiàn)“Multirate Systems and Filter Banks”,P.P.Vaidynathan,Prentice Hall,Englewood Cliffs,NJ,1993。
計(jì)算重采樣后信號(hào)的掩蔽閾值和信掩比包括以下步驟第一步、將信號(hào)進(jìn)行時(shí)域到頻域的映射??刹捎每焖俑盗⑷~變換和漢寧窗(hanningwindow)技術(shù)將時(shí)域數(shù)據(jù)轉(zhuǎn)換成頻域系數(shù)X[k],X[k]用幅度r[k]和相位φ[k]表示為X[k]=r[k]ejφ[k],那么每個(gè)子帶的能量e[b]是該子帶內(nèi)所有譜線能量的和,即e[b]=Σk=klk=khr2[k],]]>其中kl和kh分別表示子帶b的上下邊界。
第二步、確定信號(hào)中的音調(diào)和非音調(diào)成分。信號(hào)的音調(diào)性是通過(guò)對(duì)每個(gè)譜線進(jìn)行幀間預(yù)測(cè)來(lái)估計(jì)的,每個(gè)譜線的預(yù)測(cè)值和真實(shí)值的歐氏距離被映射為不可預(yù)測(cè)測(cè)度,高預(yù)測(cè)性的譜成分被認(rèn)為是音調(diào)性很強(qiáng)的,而低預(yù)測(cè)性的譜成分被認(rèn)為是類(lèi)噪聲的。
預(yù)測(cè)值的幅度rpred和相位φpred可用以下公式來(lái)表示rpred[k]=rt-1[k]+(rt-1[k]-rt-2[k])φpred[k]=φt-1[k]+(φt-1[k]-φt-2[k]),其中,t表示當(dāng)前幀的系數(shù);t-1表示前一幀的系數(shù);t-2表示前兩幀的系數(shù)。
那么,不可預(yù)測(cè)測(cè)度c[k]的計(jì)算公式為c[k]=dist(X[k],Xpred[k])r[k]+|rpred[k]|]]>其中,歐氏距離dist(X[k],Xpred[k])采用下式計(jì)算dist(X[k],Xpred[k])=|X[k]-Xpred[k]|=((r[k]cos(φ[k])-rpred[k]cos(φpred[k]))2+(r[k]sin(φ[k])-rpred[k]sin(φpred[k]))2)。
因此,每個(gè)子帶的不可預(yù)測(cè)度c[b]是該子帶內(nèi)所有譜線的能量對(duì)其不可預(yù)測(cè)度的加權(quán)和,即c[b]=Σk=klk=khc[k]r2[k].]]>子帶能量e[b]和不可預(yù)測(cè)度c[b]分別與擴(kuò)展函數(shù)進(jìn)行卷積運(yùn)算,得到子帶能量擴(kuò)展es[b]和子帶不可預(yù)測(cè)度擴(kuò)展cs[b],掩模i對(duì)子帶b的擴(kuò)展函數(shù)表示為s[i,b]。為了消除擴(kuò)展函數(shù)對(duì)能量變換的影響,需要對(duì)子帶不可預(yù)測(cè)度擴(kuò)展cs[b]做歸一化處理,其歸一化的結(jié)果用 表示為c~s[b]=cs[b]es[b].]]>同樣,為消除擴(kuò)展函數(shù)對(duì)子帶能量的影響,定義歸一化能量擴(kuò)展 為e~s[b]=es[b]n[b],]]>其中歸一化因子n[b]為n[b]=Σi=1bmaxs[i,b],]]>bmax為該幀信號(hào)所分的子帶數(shù)。
根據(jù)歸一化不可預(yù)測(cè)度擴(kuò)展 可計(jì)算子帶的音調(diào)性t[b]t[b]=-0.299-0.43loge(c~s[b]),]]>且0≤t[b]≤1。當(dāng)t[b]=1時(shí),表示該子帶信號(hào)為純音調(diào);當(dāng)t[b]=0時(shí),表示該子帶信號(hào)為白噪聲。
第三步、計(jì)算每個(gè)子帶所需的信噪比(Signal-to-Noise Ratio,簡(jiǎn)稱(chēng)SNR)。將所有子帶的噪聲掩蔽音調(diào)(Noise-Masking-Tone,簡(jiǎn)稱(chēng)NMT)的值設(shè)為5dB,音調(diào)掩蔽噪聲(Tone-Masking-Noise,簡(jiǎn)稱(chēng)TMN)的值設(shè)為18dB,若要使噪聲不被感知,則每個(gè)子帶所需的信噪比SNR[b]是SNR[b]=18t[b]+6(1-t[b])。
第四步、計(jì)算每個(gè)子帶的掩蔽閾值以及信號(hào)的感知熵。根據(jù)前述步驟得到的每個(gè)子帶的歸一化信號(hào)能量和所需的信噪比SNR,計(jì)算每個(gè)子帶的噪聲能量閾值n[b]為n[b]=e~s[b]10-SNR[b]/10.]]>為了避免預(yù)回聲的影響,將當(dāng)前幀的噪聲能量閾值n[b]與前一幀的噪聲能量閾值nprev[b]進(jìn)行比較,得到信號(hào)的掩蔽閾值為n[b]=min(n[b],2nprev[b]),這樣可以確保掩蔽閾值不會(huì)因?yàn)樵诜治龃暗慕┒擞懈吣芰康臎_擊產(chǎn)生而出現(xiàn)偏差。
進(jìn)一步地,考慮靜止掩蔽閾值qsthr[b]的影響,選擇最終的信號(hào)的掩蔽閾值為靜止掩蔽閾值與上述計(jì)算的掩蔽閾值兩者中的數(shù)值大者,即n[b]=max(n[b],qsthr[b])。然后采用如下公式計(jì)算感知熵,即pe=-Σb=0bmax(cbwidthb×log10(n[b]/(e[b]+1))),]]>其中cbwidthb表示各子帶所包含的譜線個(gè)數(shù)。
第五步計(jì)算每個(gè)子帶信號(hào)的信掩比(Signal-to-Mask Ratio,簡(jiǎn)稱(chēng)SMR)。每個(gè)子帶的信掩比SMR[b]為SMR[b]=10log10(e[b]n[b]).]]>
然后對(duì)頻域系數(shù)進(jìn)行多分辨率分析。多分辨率分析模塊53對(duì)輸入的頻域數(shù)據(jù)進(jìn)行時(shí)-頻域的重新組織,以頻率精度的降低為代價(jià)提高頻域數(shù)據(jù)的時(shí)間分辨率,從而自動(dòng)適應(yīng)快變類(lèi)型信號(hào)的時(shí)頻特性,達(dá)到抑制預(yù)回聲的效果,且無(wú)需調(diào)整時(shí)頻映射模塊52中濾波器組的形式。
多分辨率分析包括頻域系數(shù)變換和重組兩個(gè)步驟,其中通過(guò)頻域系數(shù)變換將頻域系數(shù)變換為時(shí)頻平面系數(shù);通過(guò)重組將時(shí)頻平面系數(shù)按照一定的規(guī)則進(jìn)行分組。
下面以頻域小波變換和頻域MDCT變換為例,說(shuō)明多分辨率分析的過(guò)程。
1)頻域小波變換假設(shè)時(shí)序序列x(i),i=0,1,...,2M-1,經(jīng)過(guò)時(shí)頻映射后得到的頻域系數(shù)為X(k),k=0、1、...、M-1。頻域小波或小波包變換的小波基可以是固定的,也可以是自適應(yīng)的。
下面以最簡(jiǎn)單的Harr小波基小波變換為例,說(shuō)明對(duì)頻域系數(shù)進(jìn)行多分辨率分析的過(guò)程。
Harr小波基的尺度系數(shù)為 小波系數(shù)為 圖6示出了采用Harr小波基進(jìn)行小波變換的濾波結(jié)構(gòu)示意圖,其中H0表示低通濾波(濾波系數(shù)為 ),H1表示高通濾波(濾波系數(shù)為 ),“↓2”表示2倍的下采樣操作。對(duì)于頻域系數(shù)的中低頻部分X1(k),k=0,...,k1不進(jìn)行小波變換,對(duì)頻域系數(shù)的高頻部分進(jìn)行Harr小波變換,得到不同的時(shí)間-頻率區(qū)間的系數(shù)X2(k)、X3(k)、X4(k)、X5(k)、X6(k)和X7(k),對(duì)應(yīng)的時(shí)間-頻率平面劃分如圖7所示。選擇不同的小波基,可選用不同的小波變換結(jié)構(gòu)進(jìn)行處理,得到其他類(lèi)似的時(shí)間-頻率平面劃分。因此可以根據(jù)需要,任意調(diào)整信號(hào)分析時(shí)的時(shí)頻平面劃分,滿足不同的時(shí)間和頻率分辨率的分析要求。
上述時(shí)頻平面系數(shù)在重組模塊中按照一定的規(guī)則進(jìn)行重組,例如可先將時(shí)頻平面系數(shù)在頻率方向組織,每個(gè)頻帶中的系數(shù)在時(shí)間方向組織,然后將組織好的系數(shù)按照子窗、尺度因子帶的順序排列。
2)頻域MDCT變換設(shè)輸入頻域MDCT變換濾波器組的頻域數(shù)據(jù)為X(k),k=0,1,...,N-1,依次對(duì)這N點(diǎn)頻域數(shù)據(jù)進(jìn)行M點(diǎn)的MDCT變換,使得時(shí)頻域數(shù)據(jù)的頻率精度有所下降,而時(shí)間精度則相應(yīng)地提高了。在不同的頻域范圍內(nèi)使用不同長(zhǎng)度的頻域MDCT變換,可以獲得不同的時(shí)-頻平面劃分即不同的時(shí)、頻精度。重組模塊對(duì)頻域MDCT變換濾波器組輸出的時(shí)-頻域數(shù)據(jù)進(jìn)行重組,一種重組方法是先將時(shí)頻平面系數(shù)在頻率方向組織,同時(shí)每個(gè)頻帶中的系數(shù)在時(shí)間方向組織,然后將組織好的系數(shù)按照子窗、尺度因子帶的順序排列。
量化和熵編碼進(jìn)一步包括了非線性量化和熵編碼兩個(gè)步驟,其中量化可以是標(biāo)量量化或矢量量化。
標(biāo)量量化包括以下步驟對(duì)所有尺度因子帶中的頻域系數(shù)進(jìn)行非線性壓縮;再利用每個(gè)子帶的尺度因子對(duì)該子帶的頻域系數(shù)進(jìn)行量化,得到整數(shù)表示的量化譜;選擇每幀信號(hào)中的第一個(gè)尺度因子作為公共尺度因子;其它尺度因子與其前一個(gè)尺度因子進(jìn)行差分處理。
矢量量化包括以下步驟將頻域系數(shù)構(gòu)成多個(gè)多維矢量信號(hào);對(duì)于每個(gè)M維矢量都根據(jù)平整因子進(jìn)行譜平整;根據(jù)主觀感知距離測(cè)度準(zhǔn)則在碼書(shū)中查找與待量化矢量距離最小的碼字,獲得其碼字索引。
熵編碼步驟包括對(duì)量化譜和差分處理后的尺度因子進(jìn)行熵編碼,得到碼書(shū)序號(hào)、尺度因子編碼值和無(wú)損編碼量化譜;對(duì)碼書(shū)序號(hào)進(jìn)行熵編碼,得到碼書(shū)序號(hào)編碼值。
或者是對(duì)碼字索引進(jìn)行一維或多維熵編碼,得到碼字索引的編碼值。
上述的熵編碼方法可以采用現(xiàn)有的Huffman編碼、算術(shù)編碼或游程編碼等方法中的任一種。
經(jīng)過(guò)量化和熵編碼處理后,得到編碼后的音頻碼流,將該碼流與公共尺度因子、信號(hào)類(lèi)型分析結(jié)果一起進(jìn)行復(fù)用,得到壓縮音頻碼流。
圖8是本發(fā)明音頻解碼裝置的結(jié)構(gòu)示意圖。音頻解碼裝置包括比特流解復(fù)用模塊60、熵解碼模塊61、逆量化器組62、多分辨率綜合模塊63和頻率-時(shí)間映射模塊64。壓縮音頻碼流經(jīng)過(guò)比特流解復(fù)用模塊60的解復(fù)用后,得到相應(yīng)的數(shù)據(jù)信號(hào)和控制信號(hào),輸出到熵解碼模塊61和多分辨率綜合模塊63;數(shù)據(jù)信號(hào)和控制信號(hào)在熵解碼模塊61中進(jìn)行解碼處理,恢復(fù)出譜的量化值。上述量化值在逆量化器組62中重建,得到逆量化后的譜,逆量化譜輸出到多分辨率綜合模塊63中,經(jīng)過(guò)多分辨率綜合后輸出到頻率-時(shí)間映射模塊64中,再經(jīng)過(guò)頻率-時(shí)間映射得到時(shí)域的音頻信號(hào)。
比特流解復(fù)用模塊60對(duì)壓縮音頻碼流進(jìn)行分解,得到相應(yīng)的數(shù)據(jù)信號(hào)和控制信號(hào),為其他模塊提供相應(yīng)的解碼信息。壓縮音頻數(shù)據(jù)流經(jīng)過(guò)解復(fù)用后,輸出到熵解碼模塊61的信號(hào)包括公共尺度因子、尺度因子編碼值、碼書(shū)序號(hào)編碼值和無(wú)損編碼量化譜,或者是碼字索引的編碼值;輸出信號(hào)類(lèi)型信息到多分辨率綜合模塊63。
如果在編碼裝置中量化和熵編碼模塊54中采用標(biāo)量量化器,則在解碼裝置中,熵解碼模塊61收到的是比特流解復(fù)用模塊60輸出的公共尺度因子、尺度因子編碼值、碼書(shū)序號(hào)編碼值和無(wú)損編碼量化譜,然后對(duì)其進(jìn)行碼書(shū)序號(hào)解碼、譜系數(shù)解碼和尺度因子解碼,重建出量化譜,并向逆量化器組62輸出尺度因子的整數(shù)表示和譜的量化值。熵解碼模塊61采用的解碼方法與編碼裝置中熵編碼的編碼方法相對(duì)應(yīng),如Huffman解碼、算術(shù)解碼或游程解碼等。
逆量化器組62接收到譜的量化值和尺度因子的整數(shù)表示后,將譜的量化值逆量化為無(wú)縮放的重建譜(逆量化譜),并向多分辨率綜合模塊63輸出逆量化譜。逆量化器組62可以是均勻量化器組,也可以是通過(guò)壓擴(kuò)函數(shù)實(shí)現(xiàn)的非均勻量化器組。在編碼裝置中,量化器組采用的是標(biāo)量量化器,則在解碼裝置中逆量化器組62也采用標(biāo)量逆量化器。在標(biāo)量逆量化器中,首先對(duì)譜的量化值進(jìn)行非線性擴(kuò)張,然后利用每個(gè)尺度因子得到對(duì)應(yīng)尺度因子帶中所有的譜系數(shù)(逆量化譜)。
如果量化和熵編碼模塊54中采用矢量量化器,則在解碼裝置中,熵解碼模塊61收到比特流解復(fù)用模塊60輸出的碼字索引的編碼值,將碼字索引的編碼值采用與編碼時(shí)的熵編碼方法對(duì)應(yīng)的熵解碼方法進(jìn)行解碼,得到對(duì)應(yīng)的碼字索引。
碼字索引輸出到逆量化器組62中,通過(guò)查詢(xún)碼書(shū),得到量化值(逆量化譜),輸出到多分辨率綜合模塊63。逆量化器組62采用逆矢量量化器。逆量化譜經(jīng)過(guò)多分辨率綜合后,通過(guò)頻率-時(shí)間映射模塊64的映射處理,得到時(shí)域音頻信號(hào)。頻率-時(shí)間映射模塊64可以是逆離散余弦變換(IDCT)濾波器組、逆離散傅立葉變換(IDFT)濾波器組、逆修正離散余弦變換(IMDCT)濾波器組、逆小波變換濾波器組以及余弦調(diào)制濾波器組等。
基于上述解碼器的解碼方法包括對(duì)壓縮音頻碼流進(jìn)行解復(fù)用,得到數(shù)據(jù)信息和控制信息;對(duì)上述信息進(jìn)行熵解碼,得到譜的量化值;對(duì)譜的量化值進(jìn)行逆量化處理,得到逆量化譜;將逆量化譜進(jìn)行多分辨率綜合后,再進(jìn)行頻率-時(shí)間映射,得到時(shí)域音頻信號(hào)。
如果解復(fù)用后的信息中包括碼書(shū)序號(hào)編碼值、公共尺度因子、尺度因子編碼值和無(wú)損編碼量化譜,則表明在編碼裝置中譜系數(shù)是采用標(biāo)量量化技術(shù)進(jìn)行量化,則熵解碼的步驟包括對(duì)碼書(shū)序號(hào)編碼值進(jìn)行解碼,獲得所有尺度因子帶的碼書(shū)序號(hào);根據(jù)碼書(shū)序號(hào)對(duì)應(yīng)的碼書(shū),解碼所有尺度因子帶的量化系數(shù);解碼所有尺度因子帶的尺度因子,重建量化譜。上述過(guò)程所采用的熵解碼方法對(duì)應(yīng)編碼方法中的熵編碼方法,如游程解碼方法、Huffman解碼方法、算術(shù)解碼方法等。
下面以采用游程解碼方法解碼碼書(shū)序號(hào)、采用Huffman解碼方法解碼量化系數(shù)和采用Huffman解碼方法解碼尺度因子為例,說(shuō)明熵解碼的過(guò)程。
首先通過(guò)游程解碼方法獲得所有尺度因子帶的碼書(shū)序號(hào),解碼后的碼書(shū)序號(hào)為某一區(qū)間的整數(shù),如假設(shè)該區(qū)間為
,那么只有位于該有效范圍內(nèi)的,即0至11之間的碼書(shū)序號(hào)才與對(duì)應(yīng)的譜系數(shù)Huffman碼書(shū)相對(duì)應(yīng)。對(duì)于全零子帶,可選擇某一碼書(shū)序號(hào)對(duì)應(yīng),典型的可選0序號(hào)。
當(dāng)解碼得到各尺度因子帶的碼書(shū)號(hào)后,使用與該碼書(shū)號(hào)對(duì)應(yīng)的譜系數(shù)Huffman碼書(shū),對(duì)所有尺度因子帶的量化系數(shù)進(jìn)行解碼。如果一個(gè)尺度因子帶的碼書(shū)號(hào)在有效范圍內(nèi),本實(shí)施例如在1至11之間,那么該碼書(shū)號(hào)對(duì)應(yīng)一個(gè)譜系數(shù)碼書(shū),則使用該碼書(shū)從量化譜中解碼得到尺度因子帶的量化系數(shù)的碼字索引,然后從碼字索引中解包得到量化系數(shù)。如果尺度因子帶的碼書(shū)號(hào)不在1至11之間,那么該碼書(shū)號(hào)不對(duì)應(yīng)任何譜系數(shù)碼書(shū),該尺度因子帶的量化系數(shù)也就不用解碼,直接將該子帶的量化系數(shù)全部置為零。
尺度因子用于在逆量化譜系數(shù)基礎(chǔ)上重構(gòu)譜值,如果尺度因子帶的碼書(shū)號(hào)處于有效范圍內(nèi),則每一個(gè)碼書(shū)號(hào)都對(duì)應(yīng)一個(gè)尺度因子。在對(duì)上述尺度因子進(jìn)行解碼時(shí),首先讀取第一個(gè)尺度因子所占用的碼流,然后對(duì)其它尺度因子進(jìn)行Huffman解碼,依次得到各尺度因子與前一尺度因子之間的差值,將該差值與前一尺度因子值相加,得到各尺度因子。如果當(dāng)前子帶的量化系數(shù)全部為零,那么該子帶的尺度因子不需要解碼。
經(jīng)過(guò)上述熵解碼過(guò)程后,得到譜的量化值和尺度因子的整數(shù)表示,然后對(duì)譜的量化值進(jìn)行逆量化處理,獲得逆量化譜。逆量化處理包括對(duì)譜的量化值進(jìn)行非線性擴(kuò)張;根據(jù)每個(gè)尺度因子得到對(duì)應(yīng)尺度因子帶中的所有譜系數(shù)(逆量化譜)。
如果解復(fù)用后的信息中包括碼字索引的編碼值,則表明編碼裝置中采用矢量量化技術(shù)對(duì)譜系數(shù)進(jìn)行量化,則熵解碼的步驟包括采用與編碼裝置中熵編碼方法對(duì)應(yīng)的熵解碼方法對(duì)碼字索引的編碼值進(jìn)行解碼,得到碼字索引。然后對(duì)碼字索引進(jìn)行逆量化處理,獲得逆量化譜。
對(duì)于逆量化譜,如果是快變類(lèi)型信號(hào),則對(duì)頻域系數(shù)進(jìn)行多分辨率分析,然后對(duì)頻域系數(shù)的多分辨率表示進(jìn)行量化和熵編碼;如果不是快變類(lèi)型信號(hào),則直接將頻域系數(shù)進(jìn)行量化和熵編碼。
多分辨率綜合可采用頻域小波變換法或頻域MDCT變換法。頻域小波綜合法包括先將上述時(shí)頻平面系數(shù)按照一定的規(guī)則重組;再對(duì)頻域系數(shù)進(jìn)行小波變換,得到時(shí)頻平面系數(shù)。而MDCT變換法則包括先將上述時(shí)頻平面系數(shù)按照一定的規(guī)則重組,再對(duì)頻域系數(shù)進(jìn)行數(shù)次MDCT變換,得到時(shí)頻平面系數(shù)。重組的方法可以包括先將時(shí)頻平面系數(shù)在頻率方向組織,每個(gè)頻帶中的系數(shù)在時(shí)間方向組織,然后將組織好的系數(shù)按照子窗、尺度因子帶的順序排列。
對(duì)頻域系數(shù)進(jìn)行頻率-時(shí)間映射處理的方法與編碼方法中的時(shí)-頻映射處理方法相對(duì)應(yīng),可以采用逆離散余弦變換(IDCT)、逆離散傅立葉變換(IDFT)、逆修正離散余弦變換(IMDCT)、逆小波變換等方法完成。
下面以逆修正離散余弦變換IMDCT為例說(shuō)明頻率-時(shí)間映射過(guò)程。頻率-時(shí)間映射過(guò)程包括三個(gè)步驟IMDCT變換、時(shí)域加窗處理和時(shí)域疊加運(yùn)算。
首先對(duì)預(yù)測(cè)前的譜或逆量化譜進(jìn)行IMDCT變換,得到變換后的時(shí)域信號(hào)xi,n。IMDCT變換的表達(dá)式為xi,n=2NΣk=0N2-1spec[i][k]cos(2πN(n+n0)(k+12)),]]>其中,n表示樣本序號(hào),且0≤n<N,N表示時(shí)域樣本數(shù),取值為2048,n0=(N/2+1)/2;i表示幀序號(hào);k表示譜序號(hào)。
其次,對(duì)IMDCT變換獲得的時(shí)域信號(hào)在時(shí)域進(jìn)行加窗處理。為滿足完全重構(gòu)條件,窗函數(shù)w(n)必須滿足以下兩個(gè)條件w(2M-1-n)=w(n)且w2(n)+w2(n+M)=1。
典型的窗函數(shù)有Sine窗、Kaiser-Bessel窗等。本發(fā)明采用一種固定的窗函數(shù),其窗函數(shù)為w(N+k)=cos(pi/2*((k+0.5)/N-0.94*sin(2*pi/N*(k+0.5))/(2*pi))),其中k=0...N-1;w(k)表示窗函數(shù)的第k個(gè)系數(shù),有w(k)=w(2*N-1-k);N表示編碼幀的樣本數(shù),取值為N=1024。另外可以利用雙正交變換,采用特定的分析濾波器和合成濾波器修改上述對(duì)窗函數(shù)的限制。
最后,對(duì)上述加窗時(shí)域信號(hào)進(jìn)行疊加處理,得到時(shí)域音頻信號(hào)。具體是將加窗操作后獲得的信號(hào)的前N/2個(gè)樣本和前一幀信號(hào)的后N/2個(gè)樣本重疊相加,獲得N/2個(gè)輸出的時(shí)域音頻樣本,即timeSami,n=preSami,n+preSami-1,n+N/2,其中i表示幀序號(hào),n表示樣本序號(hào),有0≤n≤N2,]]>且N的取值為2048。
圖9是本發(fā)明編碼裝置的第一個(gè)實(shí)施例的示意圖。該實(shí)施例在圖5的基礎(chǔ)上,增加了頻域線性預(yù)測(cè)及矢量量化模塊56,位于多分辨率分析模塊53的輸出與量化和熵編碼模塊54的輸入之間,輸出殘差序列到量化和熵編碼模塊54,同時(shí)將量化得到的碼字索引作為邊信息輸出到比特流復(fù)用模塊55。
由于頻域系數(shù)在經(jīng)過(guò)多分辨率分析后得到的是具有特定時(shí)頻平面劃分的時(shí)頻系數(shù),因此頻域線性預(yù)測(cè)及矢量量化模塊56需對(duì)每個(gè)時(shí)間段上的頻域系數(shù)進(jìn)行線性預(yù)測(cè)和多級(jí)矢量量化。
多分辨率分析模塊53輸出的頻域系數(shù)傳送至頻域線性預(yù)測(cè)及矢量量化模塊56中,在對(duì)頻域系數(shù)進(jìn)行多分辨率分析后,對(duì)每個(gè)時(shí)間段上的頻域系數(shù)進(jìn)行標(biāo)準(zhǔn)的線性預(yù)測(cè)分析;如果預(yù)測(cè)增益滿足給定的條件,則對(duì)頻域系數(shù)進(jìn)行線性預(yù)測(cè)誤差濾波,獲得的預(yù)測(cè)系數(shù)轉(zhuǎn)換成線譜頻率系數(shù)LSF(Line Spectrum Frequency),再采用最佳的失真度量準(zhǔn)則搜索計(jì)算出各級(jí)碼本的碼字索引,并將碼字索引作為邊信息傳送到比特流復(fù)用模塊55,而經(jīng)過(guò)預(yù)測(cè)分析得到的殘差序列則輸出到量化和熵編碼模塊54。
頻域線性預(yù)測(cè)及矢量量化模塊56由線性預(yù)測(cè)分析器、線性預(yù)測(cè)濾波器、轉(zhuǎn)換器和矢量量化器構(gòu)成。頻域系數(shù)輸入到線性預(yù)測(cè)分析器中進(jìn)行預(yù)測(cè)分析,得到預(yù)測(cè)增益和預(yù)測(cè)系數(shù),對(duì)滿足一定條件的頻域系數(shù),輸出到線性預(yù)測(cè)濾波器中進(jìn)行濾波,得到殘差序列;殘差序列直接輸出到量化和熵編碼模塊54中,而預(yù)測(cè)系數(shù)通過(guò)轉(zhuǎn)換器轉(zhuǎn)換成線譜頻率系數(shù)LSF,再將LSF參數(shù)送入矢量量化器中進(jìn)行多級(jí)矢量量化,量化后的信號(hào)被傳送到比特流復(fù)用模塊55中。
對(duì)音頻信號(hào)進(jìn)行頻域線性預(yù)測(cè)處理能夠有效地抑制預(yù)回聲并獲得較大的編碼增益。假設(shè)實(shí)信號(hào)x(t),其平方Hilbert包絡(luò)e(t)表示為e(t)=F-1{∫C(ξ)·C*(ξ-f)dξ},其中C(f)為對(duì)應(yīng)于信號(hào)x(t)正頻率成分的單邊譜,即信號(hào)的Hilbert包絡(luò)是與該信號(hào)譜的自相關(guān)函數(shù)有關(guān)的。而信號(hào)的功率譜密度函數(shù)與其時(shí)域波形的自相關(guān)函數(shù)的關(guān)系為PSD(f)=F{∫x(τ)·x*(τ-t)dτ},因此信號(hào)在時(shí)域的平方Hilbert包絡(luò)與信號(hào)在頻域的功率譜密度函數(shù)是互為對(duì)偶關(guān)系的。由上可知,每個(gè)一定頻率范圍內(nèi)的部分帶通信號(hào),如果它的Hilbert包絡(luò)保持恒定,那么相鄰譜值的自相關(guān)也將保持恒定,這就意味著譜系數(shù)序列相對(duì)于頻率而言是穩(wěn)態(tài)序列,從而可以用預(yù)測(cè)編碼技術(shù)來(lái)對(duì)譜值進(jìn)行處理,用公用的一組預(yù)測(cè)系數(shù)來(lái)有效地表示該信號(hào)。
基于圖9所示編碼裝置的編碼方法與基于圖5所示編碼裝置的編碼方法基本相同,區(qū)別在于增加了下述步驟當(dāng)頻域系數(shù)經(jīng)過(guò)多分辨率分析后,對(duì)每個(gè)時(shí)間段上的頻域系數(shù)進(jìn)行標(biāo)準(zhǔn)的線性預(yù)測(cè)分析,得到預(yù)測(cè)增益和預(yù)測(cè)系數(shù);判斷預(yù)測(cè)增益是否超過(guò)設(shè)定的閾值,如果超過(guò),則根據(jù)預(yù)測(cè)系數(shù)對(duì)頻域系數(shù)進(jìn)行頻域線性預(yù)測(cè)誤差濾波,得到殘差序列;將預(yù)測(cè)系數(shù)轉(zhuǎn)化成線譜對(duì)頻率系數(shù),并對(duì)線譜對(duì)頻率系數(shù)進(jìn)行多級(jí)矢量量化處理,得到邊信息;對(duì)殘差序列進(jìn)行量化和熵編碼;如果預(yù)測(cè)增益未超過(guò)設(shè)定的閾值,則對(duì)頻域系數(shù)進(jìn)行量化和熵編碼。
當(dāng)頻域系數(shù)經(jīng)過(guò)多分辨率分析后,首先對(duì)每個(gè)時(shí)間段上的頻域系數(shù)進(jìn)行標(biāo)準(zhǔn)的線性預(yù)測(cè)分析,包括計(jì)算自相關(guān)矩陣、遞推執(zhí)行Levinson-Durbin算法獲得預(yù)測(cè)增益和預(yù)測(cè)系數(shù)。然后判斷計(jì)算的預(yù)測(cè)增益是否超過(guò)預(yù)先設(shè)定的閾值,如果超過(guò),則根據(jù)預(yù)測(cè)系數(shù)對(duì)頻域系數(shù)進(jìn)行線性預(yù)測(cè)誤差濾波;否則對(duì)頻域系數(shù)不作處理,執(zhí)行下一步驟,對(duì)頻域系數(shù)進(jìn)行量化和熵編碼。
線性預(yù)測(cè)可分為前向預(yù)測(cè)和后向預(yù)測(cè)兩種,前向預(yù)測(cè)是指利用某一時(shí)刻之前的值預(yù)測(cè)當(dāng)前值,而后向預(yù)測(cè)是指利用某一時(shí)刻之后的值預(yù)測(cè)當(dāng)前值。下面以前向預(yù)測(cè)為例說(shuō)明線性預(yù)測(cè)誤差濾波,線性預(yù)測(cè)誤差濾波器的傳遞函數(shù)為A(z)=1-Σi=1paiz-1]]>其中ai表示預(yù)測(cè)系數(shù),p為預(yù)測(cè)階數(shù)。經(jīng)過(guò)時(shí)間-頻率變換后的頻域系數(shù)X(k)經(jīng)過(guò)濾波后,得到預(yù)測(cè)誤差E(k),也稱(chēng)殘差序列,兩者之間滿足關(guān)系E(k)=X(k)·A(z)=X(k)-Σi=1paiX(k-i).]]>這樣,經(jīng)過(guò)線性預(yù)測(cè)誤差濾波,時(shí)間-頻率變換輸出的頻域系數(shù)X(k)就可以用殘差序列E(k)和一組預(yù)測(cè)系數(shù)ai表示。然后將這組預(yù)測(cè)系數(shù)ai轉(zhuǎn)換成線譜頻率系數(shù)LSF,并對(duì)其進(jìn)行多級(jí)矢量量化,矢量量化選擇最佳的失真度量準(zhǔn)則(如最近鄰準(zhǔn)則),搜索計(jì)算出各級(jí)碼本的碼字索引,以此可確定預(yù)測(cè)系數(shù)對(duì)應(yīng)的碼字,將碼字索引作為邊信息輸出。同時(shí),對(duì)殘差序列E(k)進(jìn)行量化和熵編碼。由線性預(yù)測(cè)分析編碼原理可知,譜系數(shù)的殘差序列的動(dòng)態(tài)范圍小于原始譜系數(shù)的動(dòng)態(tài)范圍,因此在量化時(shí)可以分配較少的比特?cái)?shù),或者對(duì)于相同比特?cái)?shù)的條件,可以獲得改進(jìn)的編碼增益。
圖10是解碼裝置的實(shí)施例一的示意圖,該解碼裝置在圖8所示解碼裝置的基礎(chǔ)上,增加了逆頻域線性預(yù)測(cè)及矢量量化模塊65,該逆頻域線性預(yù)測(cè)及矢量量化模塊65位于逆量化器組62的輸出與多分辨綜合模塊63的輸入之間,并且比特流解復(fù)用模塊60向其輸出逆頻域線性預(yù)測(cè)矢量量化控制信息,用于對(duì)逆量化譜(殘差譜)進(jìn)行逆量化處理和逆線性預(yù)測(cè)濾波,得到預(yù)測(cè)前的譜,并輸出到多分辨率綜合模塊63中。
在編碼器中,采用頻域線性預(yù)測(cè)矢量量化技術(shù)來(lái)抑制預(yù)回聲,并獲得較大的編碼增益。因此在解碼器中,逆量化譜和比特流解復(fù)用模塊60輸出的逆頻域線性預(yù)測(cè)矢量量化控制信息輸入到逆頻域線性預(yù)測(cè)及矢量量化模塊65中恢復(fù)出線性預(yù)測(cè)前的譜。
逆頻域線性預(yù)測(cè)及矢量量化模塊65包括逆矢量量化器、逆轉(zhuǎn)換器和逆線性預(yù)測(cè)濾波器,其中逆矢量量化器用于對(duì)碼字索引進(jìn)行逆量化得到線譜對(duì)頻率系數(shù)(LSF);逆轉(zhuǎn)換器則用于將線譜頻率系數(shù)(LSF)逆轉(zhuǎn)換為預(yù)測(cè)系數(shù);逆線性預(yù)測(cè)濾波器用于根據(jù)預(yù)測(cè)系數(shù)對(duì)逆量化譜進(jìn)行逆濾波,得到預(yù)測(cè)前的譜,并輸出到多分辨率綜合模塊63。
基于圖10所示解碼裝置的解碼方法與基于圖8所示解碼裝置的解碼方法基本相同,區(qū)別在于增加了下述步驟在得到逆量化譜后,判斷控制信息中是否包含逆量化譜需要經(jīng)過(guò)逆頻域線性預(yù)測(cè)矢量量化的信息,如果含有,則進(jìn)行逆矢量量化處理,得到預(yù)測(cè)系數(shù),并根據(jù)預(yù)測(cè)系數(shù)對(duì)逆量化譜進(jìn)行線性預(yù)測(cè)合成,得到預(yù)測(cè)前的譜;將預(yù)測(cè)前的譜進(jìn)行多分辨率綜合。
在獲得逆量化譜后,根據(jù)控制信息判斷該幀信號(hào)是否經(jīng)過(guò)頻域線性預(yù)測(cè)矢量量化,如果是,則從控制信息中獲取預(yù)測(cè)系數(shù)矢量量化后的碼字索引;再根據(jù)碼字索引得到量化的線譜頻率系數(shù)(LSF),并以此計(jì)算出預(yù)測(cè)系數(shù);然后將逆量化譜進(jìn)行線性預(yù)測(cè)合成,得到預(yù)測(cè)前的譜。
線性預(yù)測(cè)誤差濾波處理所采用的傳遞函數(shù)A(z)為A(z)=1-Σi=1paiz-i,]]>其中ai是預(yù)測(cè)系數(shù);p為預(yù)測(cè)階數(shù)。因此殘差序列E(k)與預(yù)測(cè)前的譜X(k)滿足X(k)=E(k)·1A(z)=E(k)+Σi=1paiX(k-i).]]>這樣,殘差序列E(k)和計(jì)算出的預(yù)測(cè)系數(shù)ai經(jīng)過(guò)頻域線性預(yù)測(cè)合成,就可得到預(yù)測(cè)前的譜X(k),將預(yù)測(cè)前的譜X(k)進(jìn)行頻率-時(shí)間映射處理。
如果控制信息表明該信號(hào)幀沒(méi)有經(jīng)過(guò)頻域線性預(yù)測(cè)矢量量化,則不進(jìn)行逆頻域線性預(yù)測(cè)矢量量化處理,將逆量化譜直接進(jìn)行頻率-時(shí)間映射處理。
圖11給出了本發(fā)明編碼裝置的第二個(gè)實(shí)施例的結(jié)構(gòu)示意圖。該實(shí)施例在圖5的基礎(chǔ)上增加了和差立體聲(M/S)編碼模塊57,該模塊位于多分辨率分析模塊53的輸出與量化和熵編碼模塊54的輸入之間。對(duì)于多聲道信號(hào),心理聲學(xué)分析模塊51除了計(jì)算音頻信號(hào)單聲道的掩蔽閾值,還要計(jì)算和差聲道的掩蔽閾值,輸出到量化和熵編碼模塊54。和差立體聲編碼模塊57還可以位于量化和熵編碼模塊54中的量化器組與編碼器之間。
和差立體聲編碼模塊57是利用聲道對(duì)中兩個(gè)聲道之間的相關(guān)性,將左右聲道的頻域系數(shù)/殘差序列等效為和差聲道的頻域系數(shù)/殘差序列,以此達(dá)到減少碼率和提高編碼效率的效果,因此只適用于信號(hào)類(lèi)型一致的多聲道信號(hào)。如果是單聲道信號(hào)或者信號(hào)類(lèi)型不一致的多聲道信號(hào),則不進(jìn)行和差立體聲編碼處理。
基于圖11所示編碼裝置的編碼方法與基于圖5所示編碼裝置的編碼方法基本相同,區(qū)別在于增加了下述步驟在對(duì)頻域系數(shù)進(jìn)行量化和熵編碼處理之前,判斷音頻信號(hào)是否為多聲道信號(hào),如果是多聲道信號(hào),則判斷左、右聲道信號(hào)的信號(hào)類(lèi)型是否一致,如果信號(hào)類(lèi)型一致,則判斷兩聲道對(duì)應(yīng)的尺度因子帶之間是否滿足和差立體聲編碼條件,如果滿足,則對(duì)其進(jìn)行和差立體聲編碼,得到和差聲道的頻域系數(shù);如果不滿足,則不進(jìn)行和差立體聲編碼;如果是單聲道信號(hào)或信號(hào)類(lèi)型不一致的多聲道信號(hào),則對(duì)頻域系數(shù)不進(jìn)行處理。
和差立體聲編碼除了可以應(yīng)用在量化處理之前,還可以應(yīng)用在量化之后、熵編碼之前,即在對(duì)頻域系數(shù)量化后,判斷音頻信號(hào)是否為多聲道信號(hào),如果是多聲道信號(hào),則判斷左、右聲道信號(hào)的信號(hào)類(lèi)型是否一致,如果信號(hào)類(lèi)型一致,則判斷兩聲道對(duì)應(yīng)的尺度因子帶之間是否滿足和差立體聲編碼條件,如果滿足,則對(duì)其進(jìn)行和差立體聲編碼;如果不滿足,則不進(jìn)行和差立體聲編碼處理;如果是單聲道信號(hào)或信號(hào)類(lèi)型不一致的多聲道信號(hào),則對(duì)頻域系數(shù)不進(jìn)行和差立體聲編碼處理。
判斷尺度因子帶是否可進(jìn)行和差立體聲編碼的方法很多,本發(fā)明采用的判斷方法是通過(guò)K-L變換。具體判斷過(guò)程如下假如左聲道尺度因子帶的譜系數(shù)為l(k),右聲道相對(duì)應(yīng)的尺度因子帶的譜系數(shù)為r(k),其相關(guān)矩陣C為C=CllClrClrCrr,]]>其中,Cll=1NΣk=0N-1l(k}*l(k);]]>Clr=1NΣk=0N-1l(k}*r(k);]]>Crr=1NΣk=0N-1r(k}*r(k);]]>N是尺度因子帶的譜線數(shù)目。對(duì)相關(guān)矩陣C進(jìn)行K-L變換,得到RCRT=Λ=λii00λee,]]>其中,R=cosα-sinαsinαcosα]]>a∈[-π2,π2].]]>旋轉(zhuǎn)角度a滿足tan(2a)=2ClrCll-Crr,]]>當(dāng)a=±π/4時(shí),就是和差立體聲編碼模式。因此當(dāng)旋轉(zhuǎn)角度a的絕對(duì)值偏離π/4較小時(shí),比如3π/16<|a|<5π/16,對(duì)應(yīng)的尺度因子帶可以進(jìn)行和差立體聲編碼。
如果和差立體聲編碼應(yīng)用在量化處理之前,則將左右聲道在尺度因子帶的頻域系數(shù)通過(guò)線性變換用和差聲道的頻域系數(shù)代替MS=12111-1LR,]]>其中,M表示和聲道頻域系數(shù);S表示差聲道頻域系數(shù);L表示左聲道頻域系數(shù);R表示為右聲道頻域系數(shù)。
如果和差立體聲編碼應(yīng)用在量化之后,則左右聲道在尺度因子帶的量化后的頻域系數(shù)通過(guò)線性變換用和差聲道的頻域系數(shù)代替M^S^=101-1L^R^]]>其中 表示量化后的和聲道頻域系數(shù); 表示量化后的差聲道頻域系數(shù); 表示量化后的左聲道頻域系數(shù); 表示量化后的右聲道頻域系數(shù)。
將和差立體聲編碼放在量化處理之后,不僅可以有效的去除左右聲道的相關(guān),而且由于在量化后進(jìn)行,因此可以達(dá)到無(wú)損編碼。
圖12是解碼裝置的實(shí)施例二的示意圖。該解碼裝置在圖8所示的解碼裝置的基礎(chǔ)上,增加了和差立體聲解碼模塊66,位于逆量化器組62的輸出與多分辨率綜合模塊63的輸入之間,接收比特流解復(fù)用模塊60輸出的信號(hào)類(lèi)型分析結(jié)果與和差立體聲控制信號(hào),用于根據(jù)上述控制信息將和差聲道的逆量化譜轉(zhuǎn)換成左右聲道的逆量化譜。
在和差立體聲控制信號(hào)中,有一個(gè)標(biāo)志位用于表明當(dāng)前聲道對(duì)是否需要和差立體聲解碼,若需要,則在每個(gè)尺度因子帶上也有一個(gè)標(biāo)志位表明對(duì)應(yīng)尺度因子帶是否需要和差立體聲解碼,和差立體聲解碼模塊66根據(jù)尺度因子帶的標(biāo)志位,確定是否需要對(duì)某些尺度因子帶中的逆量化譜進(jìn)行和差立體聲解碼。如果在編碼裝置中進(jìn)行了和差立體聲編碼,則在解碼裝置中必須對(duì)逆量化譜進(jìn)行和差立體聲解碼。
和差立體聲解碼模塊66還可以位于熵解碼模塊61的輸出與逆量化器組62的輸入之間,接收比特流解復(fù)用模塊60輸出的和差立體聲控制信號(hào)和信號(hào)類(lèi)型分析結(jié)果。
基于圖12所示解碼裝置的解碼方法基本與基于圖8所示解碼裝置的解碼方法相同,區(qū)別在于增加了下述步驟在得到逆量化譜后,如果信號(hào)類(lèi)型分析結(jié)果表明信號(hào)類(lèi)型一致,則根據(jù)和差立體聲控制信號(hào)判斷是否需要對(duì)逆量化譜進(jìn)行和差立體聲解碼;如果需要,則根據(jù)每個(gè)尺度因子帶上的標(biāo)志位判斷該尺度因子帶是否需要和差立體聲解碼,如果需要,則將該尺度因子帶中的和差聲道的逆量化譜轉(zhuǎn)換成左右聲道的逆量化譜,再進(jìn)行后續(xù)處理;如果信號(hào)類(lèi)型不一致或者不需要進(jìn)行和差立體聲解碼,則對(duì)逆量化譜不進(jìn)行處理,直接進(jìn)行后續(xù)處理。
和差立體聲解碼還可以在熵解碼處理之后、逆量化處理之前進(jìn)行,即當(dāng)?shù)玫阶V的量化值后,如果信號(hào)類(lèi)型分析結(jié)果表明信號(hào)類(lèi)型一致,則根據(jù)和差立體聲控制信號(hào)判斷是否需要對(duì)譜的量化值進(jìn)行和差立體聲解碼;如果需要,則根據(jù)每個(gè)尺度因子帶上的標(biāo)志位判斷該尺度因子帶是否需要和差立體聲解碼,如果需要,則將該尺度因子帶中的和差聲道的譜的量化值轉(zhuǎn)換成左右聲道的譜的量化值,再進(jìn)行后續(xù)處理;如果信號(hào)類(lèi)型不一致或者不需要進(jìn)行和差立體聲解碼,則對(duì)譜的量化值不進(jìn)行處理,直接進(jìn)行后續(xù)處理。
如果和差立體聲解碼在熵解碼之后、逆量化之前,則左右聲道在尺度因子帶的頻域系數(shù)采用下列運(yùn)算通過(guò)和差聲道的頻域系數(shù)得到l^r^=101-1m^s^,]]>其中 表示量化后的和聲道頻域系數(shù);表示量化后的差聲道頻域系數(shù); 表示量化后的左聲道頻域系數(shù); 表示量化后的右聲道頻域系數(shù)。
如果和差立體聲解碼在逆量化之后,則左右聲道在子帶的逆量化后的頻域系數(shù)根據(jù)下面的矩陣運(yùn)算通過(guò)和差聲道的頻域系數(shù)得到lr=111-1ms,]]>其中m表示和聲道頻域系數(shù);s表示差聲道頻域系數(shù);l表示左聲道頻域系數(shù);r表示右聲道頻域系數(shù)。
圖13給出了本發(fā)明編碼裝置的第三個(gè)實(shí)施例的結(jié)構(gòu)示意圖。該實(shí)施例在圖9的基礎(chǔ)上,增加了和差立體聲編碼模塊57,位于頻域線性預(yù)測(cè)及矢量量化模塊56的輸出與量化和熵編碼模塊54的輸入之間,心理聲學(xué)分析模塊51將和差聲道的掩蔽閾值輸出到量化和熵編碼模塊54。
和差立體聲編碼模塊57也可以位于量化和熵編碼模塊54中的量化器組與編碼器之間,接收心理聲學(xué)分析模塊51輸出的信號(hào)類(lèi)型分析結(jié)果。
在本實(shí)施例中,和差立體聲編碼模塊57的功能及工作原理與其在圖11中的相同,此處不再贅述。
基于圖13所示編碼裝置的編碼方法與基于圖9所示編碼裝置的編碼方法基本相同,區(qū)別在于增加了下述步驟在對(duì)頻域系數(shù)進(jìn)行量化和熵編碼處理之前,判斷音頻信號(hào)是否為多聲道信號(hào),如果是多聲道信號(hào),則判斷左、右聲道信號(hào)的信號(hào)類(lèi)型是否一致,如果信號(hào)類(lèi)型一致,則判斷尺度因子帶是否滿足編碼條件,如果滿足,則對(duì)該尺度因子帶進(jìn)行和差立體聲編碼;如果不滿足,則不進(jìn)行和差立體聲編碼處理;如果是單聲道信號(hào)或信號(hào)類(lèi)型不一致的多聲道信號(hào),則不進(jìn)行和差立體聲編碼處理。
和差立體聲編碼除了可以應(yīng)用在量化處理之前,還可以應(yīng)用在量化之后、熵編碼之前,即在對(duì)頻域系數(shù)量化后,判斷音頻信號(hào)是否為多聲道信號(hào),如果是多聲道信號(hào),則判斷左、右聲道信號(hào)的信號(hào)類(lèi)型是否一致,如果信號(hào)類(lèi)型一致,則判斷尺度因子帶是否滿足編碼條件,如果滿足,則對(duì)該尺度因子帶進(jìn)行和差立體聲編碼;如果不滿足,則不進(jìn)行和差立體聲編碼處理;如果是單聲道信號(hào)或信號(hào)類(lèi)型不一致的多聲道信號(hào),則對(duì)不進(jìn)行和差立體聲編碼處理。
圖14是解碼裝置的實(shí)施例三的結(jié)構(gòu)圖。該解碼裝置在圖10所示解碼裝置的基礎(chǔ)上,增加了和差立體聲解碼模塊66,位于逆量化器組62的輸出與逆頻域線性預(yù)測(cè)及矢量量化模塊65的輸入之間,比特流解復(fù)用模塊60向其輸出和差立體聲控制信號(hào)。
和差立體聲解碼模塊66也可以位于熵解碼模塊61的輸出與逆量化器組62的輸入之間,接收比特流解復(fù)用模塊60輸出的和差立體聲控制信號(hào)。
在本實(shí)施例中,和差立體聲解碼模塊66的功能及工作原理與其在圖10中的相同,此處不再贅述。
基于圖14所示解碼裝置的解碼方法與基于圖10所示解碼裝置的解碼方法基本相同,區(qū)別在于增加了下述步驟在得到逆量化譜后,如果信號(hào)類(lèi)型分析結(jié)果表明信號(hào)類(lèi)型一致,則根據(jù)和差立體聲控制信號(hào)判斷是否需要對(duì)逆量化譜進(jìn)行和差立體聲解碼;如果需要,則根據(jù)每個(gè)尺度因子帶上的標(biāo)志位判斷該尺度因子帶是否需要和差立體聲解碼,如果需要,則將該尺度因子帶中的和差聲道的逆量化譜轉(zhuǎn)換成左右聲道的逆量化譜,再進(jìn)行后續(xù)處理;如果信號(hào)類(lèi)型不一致或者不需要進(jìn)行和差立體聲解碼,則對(duì)逆量化譜不進(jìn)行處理,直接進(jìn)行后續(xù)處理。
和差立體聲解碼還可以在逆量化處理之前進(jìn)行,即當(dāng)?shù)玫阶V的量化值后,如果信號(hào)類(lèi)型分析結(jié)果表明信號(hào)類(lèi)型一致,則根據(jù)和差立體聲控制信號(hào)判斷是否需要對(duì)譜的量化值進(jìn)行和差立體聲解碼;如果需要,則根據(jù)每個(gè)尺度因子帶上的標(biāo)志位判斷該尺度因子帶是否需要和差立體聲解碼,如果需要,則將該尺度因子帶中的和差聲道的譜的量化值轉(zhuǎn)換成左右聲道的譜的量化值,再進(jìn)行后續(xù)處理;如果信號(hào)類(lèi)型不一致或者不需要進(jìn)行和差立體聲解碼,則對(duì)譜的量化值不進(jìn)行處理,直接進(jìn)行后續(xù)處理。
圖15給出了本發(fā)明編碼裝置的第四個(gè)實(shí)施例的示意圖。本實(shí)施例是在圖5所示編碼裝置的基礎(chǔ)上,增加了重采樣模塊590和頻帶擴(kuò)展模塊591,其中重采樣模塊590對(duì)輸入音頻信號(hào)進(jìn)行重采樣,改變音頻信號(hào)的采樣率,再將改變了采樣率的音頻信號(hào)輸出到信號(hào)性質(zhì)分析模塊50;頻帶擴(kuò)展模塊591用于將輸入的音頻信號(hào)在整個(gè)頻帶上進(jìn)行分析,提取高頻部分的譜包絡(luò)及其與低頻部分產(chǎn)生關(guān)系的特性,并輸出到比特流復(fù)用模塊55。
重采樣模塊590用于對(duì)輸入音頻信號(hào)進(jìn)行重采樣,重采樣包括上采樣和下采樣兩種,下面以下采樣為例說(shuō)明重采樣。在本實(shí)施例中,重采樣模塊590包括低通濾波器和下采樣器,其中低通濾波器用于限制音頻信號(hào)的頻帶,消除下采樣可能引起的混疊。輸入的音頻信號(hào)經(jīng)過(guò)低通濾波后,進(jìn)行下采樣。假設(shè)輸入的音頻信號(hào)為s(n),經(jīng)過(guò)脈沖響應(yīng)為h(n)的低通濾波器濾波后的輸出為v(n),則有v(n)=Σk=-∞∞h(k)s(n-k);]]>對(duì)v(n)進(jìn)行M倍的下采樣后的序列為x(n),則x(m)=v(Mm)=Σk=-∞∞h(k)s(Mm-k).]]>這樣,重采樣后的音頻信號(hào)x(n)的采樣率就比原始輸入的音頻信號(hào)s(n)的采樣率降低了M倍。
原始輸入音頻信號(hào)輸入到頻帶擴(kuò)展模塊591后,在整個(gè)頻帶上進(jìn)行分析,提取出高頻部分的譜包絡(luò)及其與低頻部分產(chǎn)生關(guān)系的特性,作為頻帶擴(kuò)展控制信息輸出到比特流復(fù)用模塊55。
頻帶擴(kuò)展的基本原理是對(duì)于大多數(shù)音頻信號(hào),其高頻部分的特性與低頻部分的特性存在很強(qiáng)的相關(guān)性,因此音頻信號(hào)的高頻部分可以通過(guò)其低頻部分有效地重構(gòu)出來(lái),這樣,音頻信號(hào)的高頻部分可以不傳輸。為確保高頻部分能夠正確的重構(gòu),在壓縮音頻碼流中僅傳輸少量的頻帶擴(kuò)展控制信號(hào)就可以了。
頻帶擴(kuò)展模塊591包括參數(shù)提取模塊和譜包絡(luò)提取模塊,輸入信號(hào)進(jìn)入?yún)?shù)提取模塊中,提取在不同時(shí)頻區(qū)域表示輸入信號(hào)譜特性的參數(shù),然后在譜包絡(luò)提取模塊中,以一定的時(shí)頻分辨率估計(jì)信號(hào)高頻部分的譜包絡(luò)。為了確保時(shí)頻分辨率最適合于當(dāng)前輸入信號(hào)的特性,譜包絡(luò)的時(shí)頻分辨率可以自由選擇。輸入信號(hào)譜特性的參數(shù)和高頻部分的譜包絡(luò)作為頻帶擴(kuò)展的控制信號(hào)輸出到比特流復(fù)用模塊55中復(fù)用。
比特流復(fù)用模塊55收到量化和熵編碼模塊54輸出的包括公共尺度因子、尺度因子編碼值、碼書(shū)序號(hào)編碼值和無(wú)損編碼量化譜的碼流或者是碼字索引的編碼值以及頻帶擴(kuò)展模塊591輸出的頻帶擴(kuò)展控制信號(hào)后,對(duì)其進(jìn)行復(fù)用,得到壓縮音頻數(shù)據(jù)流。
基于圖15所示編碼裝置的編碼方法,具體包括在整個(gè)頻帶上分析輸入音頻信號(hào),提取其高頻譜包絡(luò)和信號(hào)譜特性參數(shù)作為頻帶擴(kuò)展控制信號(hào);對(duì)輸入音頻信號(hào)進(jìn)行重采樣處理和信號(hào)類(lèi)型分析;計(jì)算重采樣后信號(hào)的信掩比;對(duì)重采樣后的信號(hào)進(jìn)行時(shí)頻映射,獲得音頻信號(hào)的頻域系數(shù);對(duì)頻域系數(shù)進(jìn)行量化和熵編碼;將頻帶擴(kuò)展控制信號(hào)和編碼后的音頻碼流進(jìn)行復(fù)用,得到壓縮音頻碼流。其中重采樣處理包括兩個(gè)步驟限制音頻信號(hào)的頻帶;對(duì)限制頻帶的音頻信號(hào)進(jìn)行多倍的下采樣。
圖16是解碼裝置的實(shí)施例四的結(jié)構(gòu)示意圖,該實(shí)施例是在圖8所示解碼裝置的基礎(chǔ)上增加了頻帶擴(kuò)展模塊68,接收比特流解復(fù)用模塊60輸出的頻帶擴(kuò)展控制信息和頻率-時(shí)間映射模塊64輸出的低頻段的時(shí)域音頻信號(hào),通過(guò)頻譜搬移和高頻調(diào)整重建高頻信號(hào)部分,輸出寬頻帶音頻信號(hào)。
基于圖16所示解碼裝置的解碼方法,基本與基于圖8所示解碼裝置的解碼方法相同,區(qū)別在于增加了下述步驟在獲得時(shí)域音頻信號(hào)后,根據(jù)頻帶擴(kuò)展控制信息和時(shí)域音頻信號(hào),重構(gòu)音頻信號(hào)的高頻部分,得到寬頻帶音頻信號(hào)。
圖17、19和21是編碼裝置的第五個(gè)至第七個(gè)實(shí)施例,分別是在圖11、圖9和圖13所示編碼裝置的基礎(chǔ)上,增加了重采樣模塊590和頻帶擴(kuò)展模塊591,這兩個(gè)模塊與其他模塊的連接關(guān)系、功能和原理均與其在圖15中的相同,此處不再贅述。
圖18、20和22則是解碼裝置的第五個(gè)至第七個(gè)實(shí)施例,分別是在圖12、圖10和圖14所示解碼裝置的基礎(chǔ)上,增加了頻帶擴(kuò)展模塊68,接收比特流解復(fù)用模塊60輸出的頻帶擴(kuò)展控制信息和頻率-時(shí)間映射模塊64輸出的低頻段的時(shí)域音頻信號(hào),通過(guò)頻譜搬移和高頻調(diào)整重建高頻信號(hào)部分,輸出寬頻帶音頻信號(hào)。
在上述編碼裝置的7個(gè)實(shí)施例中,還可以包括增益控制模塊,接收信號(hào)性質(zhì)分析模塊50輸出的音頻信號(hào),控制快變類(lèi)型信號(hào)的動(dòng)態(tài)范圍,消除音頻處理中的預(yù)回聲,其輸出連接到時(shí)頻映射模塊52和心理聲學(xué)分析模塊51,同時(shí)將增益調(diào)整糧輸出到比特流復(fù)用模塊55。
增益控制模塊根據(jù)音頻信號(hào)的信號(hào)類(lèi)型,只對(duì)快變類(lèi)型信號(hào)進(jìn)行控制,而對(duì)緩變類(lèi)型信號(hào),則不進(jìn)行處理,直接輸出。對(duì)于快變類(lèi)型信號(hào),增益控制模塊調(diào)整信號(hào)的時(shí)域能量包絡(luò),提升快變點(diǎn)前信號(hào)的增益值,使得快變點(diǎn)前、后的時(shí)域信號(hào)幅度較為接近;然后將調(diào)整了時(shí)域能量包絡(luò)的時(shí)域信號(hào)輸出到時(shí)頻映射模塊52,同時(shí)將增益調(diào)整量輸出到比特流復(fù)用模塊55。
基于該編碼裝置的編碼方法基本與基于上述編碼裝置的編碼方法相同,區(qū)別在于增加了下述步驟對(duì)經(jīng)過(guò)信號(hào)類(lèi)型分析的信號(hào)進(jìn)行增益控制。
在上述編碼裝置的7個(gè)實(shí)施例中,還可以包括逆增益控制模塊,位于頻率-時(shí)間映射模塊64的輸出之后,接收比特流解復(fù)用模塊60輸出的信號(hào)類(lèi)型分析結(jié)果和增益調(diào)整量信息,用于調(diào)整時(shí)域信號(hào)的增益,控制預(yù)回聲。逆增益控制模塊接收到頻率-時(shí)間映射模塊64輸出的重建時(shí)域信號(hào)后,對(duì)快變類(lèi)型信號(hào)進(jìn)行控制,而對(duì)緩變類(lèi)型信號(hào)不進(jìn)行處理。對(duì)于快變類(lèi)型信號(hào),逆增益控制模塊根據(jù)增益調(diào)整量信息調(diào)整重建時(shí)域信號(hào)的能量包絡(luò),減小快變點(diǎn)前信號(hào)的幅度值,將能量包絡(luò)調(diào)回原先的前低后高的狀態(tài),這樣快變點(diǎn)前的量化噪聲的幅度值會(huì)和信號(hào)的幅度值一起相應(yīng)地減小,從而控制了預(yù)回聲。
基于該解碼裝置的解碼方法基本與基于上述解碼裝置的解碼方法相同,區(qū)別在于增加了下述步驟對(duì)重建時(shí)域信號(hào)進(jìn)行逆增益控制。
最后所應(yīng)說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種增強(qiáng)音頻編碼裝置,包括心理聲學(xué)分析模塊、時(shí)頻映射模塊、量化和熵編碼模塊以及比特流復(fù)用模塊,其特征在于,還包括信號(hào)性質(zhì)分析模塊和多分辨率分析模塊;其中所述信號(hào)性質(zhì)分析模塊,用于對(duì)輸入音頻信號(hào)進(jìn)行類(lèi)型分析,并輸出到所述心理聲學(xué)分析模塊和所述時(shí)頻映射模塊,同時(shí)將音頻信號(hào)的類(lèi)型分析結(jié)果輸出到所述比特流復(fù)用模塊;所述心理聲學(xué)分析模塊,用于計(jì)算音頻信號(hào)的掩蔽閾值和信掩比,并輸出到所述量化和熵編碼模塊;所述時(shí)頻映射模塊,用于將時(shí)域音頻信號(hào)轉(zhuǎn)變成頻域系數(shù),并輸出到多分辨率分析模塊;所述多分辨率分析模塊,用于根據(jù)所述信號(hào)性質(zhì)分析模塊輸出的信號(hào)類(lèi)型分析結(jié)果,對(duì)快變類(lèi)型信號(hào)的頻域系數(shù)進(jìn)行多分辨率分析,并輸出到量化和熵編碼模塊;所述量化和熵編碼模塊,在所述心理聲學(xué)分析模塊輸出的信掩比的控制下,用于對(duì)頻域系數(shù)進(jìn)行量化和熵編碼,并輸出到所述比特流復(fù)用模塊;所述比特流復(fù)用模塊用于將接收到的數(shù)據(jù)進(jìn)行復(fù)用,形成音頻編碼碼流。
2.根據(jù)權(quán)利要求1所述的增強(qiáng)音頻編碼裝置,其特征在于,所述多分辨率分析模塊包括頻域系數(shù)變換模塊和重組模塊,其中所述頻域系數(shù)變換模塊用于將頻域系數(shù)變換為時(shí)頻平面系數(shù);所述重組模塊用于將時(shí)頻平面系數(shù)按照一定的規(guī)則進(jìn)行重組;其中所述頻域系數(shù)變換模塊是頻域小波變換濾波器組或頻域MDCT變換濾波器組。
3.根據(jù)權(quán)利要求1所述的增強(qiáng)音頻編碼裝置,其特征在于,還包括頻域線性預(yù)測(cè)及矢量量化模塊,位于所述多分辨率分析模塊的輸出與所述量化和熵編碼模塊的輸入之間;所述頻域線性預(yù)測(cè)及矢量量化模塊具體由線性預(yù)測(cè)分析器、線性預(yù)測(cè)濾波器、轉(zhuǎn)換器和矢量量化器構(gòu)成;所述線性預(yù)測(cè)分析器,用于對(duì)頻域系數(shù)進(jìn)行預(yù)測(cè)分析,得到預(yù)測(cè)增益和預(yù)測(cè)系數(shù),并將滿足一定條件的頻域系數(shù)輸出到所述線性預(yù)測(cè)濾波器;對(duì)于不滿足條件的頻域系數(shù)直接輸出到所述量化和熵編碼模塊;所述線性預(yù)測(cè)濾波器,用于對(duì)頻域系數(shù)進(jìn)行濾波,得到殘差序列,并將殘差序列輸出到所述量化和熵編碼模塊,將預(yù)測(cè)系數(shù)輸出到轉(zhuǎn)換器;所述轉(zhuǎn)換器,用于將預(yù)測(cè)系數(shù)轉(zhuǎn)換成線譜對(duì)頻率系數(shù);所述矢量量化器,用于對(duì)線譜對(duì)頻率系數(shù)進(jìn)行多級(jí)矢量量化,量化得到的有關(guān)邊信息被傳送到所述比特流復(fù)用模塊。
4.根據(jù)權(quán)利要求1-3任一所述的增強(qiáng)音頻編碼裝置,其特征在于,還包括和差立體聲編碼模塊,位于所述頻域線性預(yù)測(cè)及矢量量化模塊的輸出與所述量化和熵編碼模塊的輸入之間,或者位于所述量化和熵編碼模塊中的量化器組與編碼器之間;所述信號(hào)性質(zhì)分析模塊向其輸出信號(hào)類(lèi)型分析結(jié)果;所述和差立體聲編碼模塊用于將左右聲道的殘差序列/頻域系數(shù)轉(zhuǎn)換為和差聲道的殘差序列/頻域系數(shù)。
5.根據(jù)權(quán)利要求1-4任一所述的增強(qiáng)音頻編碼裝置,其特征在于,還包括重采樣模塊和頻帶擴(kuò)展模塊;所述重采樣模塊,用于對(duì)輸入音頻信號(hào)進(jìn)行重采樣,改變音頻信號(hào)的采樣率,并將改變采樣率后的音頻信號(hào)輸出到所述心理聲學(xué)分析模塊和所述信號(hào)性質(zhì)分析模塊;具體包括低通濾波器和下采樣器;其中所述低通濾波器用于限制音頻信號(hào)的頻帶,所述下采樣器用于對(duì)限制頻帶的音頻信號(hào)進(jìn)行下采樣,降低信號(hào)的采樣率;所述頻帶擴(kuò)展模塊,用于將輸入音頻信號(hào)在整個(gè)頻帶上進(jìn)行分析,提取高頻部分的譜包絡(luò)及表征低、高頻譜之間相關(guān)性的參數(shù),并輸出到所述比特流復(fù)用模塊;具體包括參數(shù)提取模塊和譜包絡(luò)提取模塊;所述參數(shù)提取模塊用于提取輸入信號(hào)在不同時(shí)頻區(qū)域表示輸入信號(hào)譜特性的參數(shù);所述譜包絡(luò)提取模塊用于以一定的時(shí)頻分辨率估計(jì)信號(hào)高頻部分的譜包絡(luò),然后將輸入信號(hào)譜特性的參數(shù)和高頻部分的譜包絡(luò)輸出到所述比特流復(fù)用模塊。
6.一種增強(qiáng)音頻編碼方法,其特征在于,包括以下步驟步驟一、對(duì)輸入音頻信號(hào)進(jìn)行類(lèi)型分析,將信號(hào)類(lèi)型分析結(jié)果作為復(fù)用信息的一部分;步驟二、對(duì)類(lèi)型分析后的信號(hào)進(jìn)行時(shí)頻映射,獲得音頻信號(hào)的頻域系數(shù);同時(shí),計(jì)算音頻信號(hào)的信掩比;步驟三、如果是快變類(lèi)型信號(hào),則對(duì)頻域系數(shù)進(jìn)行多分辨率分析;如果不是快變類(lèi)型信號(hào),則轉(zhuǎn)至步驟四;步驟四、在信掩比的控制下,對(duì)頻域系數(shù)進(jìn)行量化和熵編碼;步驟五、將編碼后的音頻信號(hào)進(jìn)行復(fù)用,得到壓縮音頻碼流。
7.根據(jù)權(quán)利要求6所述增強(qiáng)音頻編碼方法,其特征在于,所述步驟四的量化是標(biāo)量量化,具體包括對(duì)所有尺度因子帶中的頻域系數(shù)進(jìn)行非線性壓縮;再利用每個(gè)子帶的尺度因子對(duì)該子帶的頻域系數(shù)進(jìn)行量化,得到整數(shù)表示的量化譜;選擇每幀信號(hào)中的第一個(gè)尺度因子作為公共尺度因子;其它尺度因子與其前一個(gè)尺度因子進(jìn)行差分處理;所述熵編碼包括對(duì)量化譜和差分處理后的尺度因子進(jìn)行熵編碼,得到碼書(shū)序號(hào)、尺度因子編碼值和量化譜的無(wú)損編碼值;對(duì)碼書(shū)序號(hào)進(jìn)行熵編碼,得到碼書(shū)序號(hào)編碼值。
8.根據(jù)權(quán)利要求6所述增強(qiáng)音頻編碼方法,其特征在于,所述步驟三多分辨率分析包括對(duì)頻域系數(shù)進(jìn)行MDCT變換,得到時(shí)頻平面系數(shù);將上述時(shí)頻平面系數(shù)按照一定的規(guī)則重組;其中所述重組方法包括先將時(shí)頻平面系數(shù)在頻率方向組織,每個(gè)頻帶中的系數(shù)在時(shí)間方向組織,然后將組織好的系數(shù)按照子窗、尺度因子帶的順序排列。
9.根據(jù)權(quán)利要求6-8任一所述增強(qiáng)音頻編碼方法,其特征在于,在所述步驟三與步驟四之間,還包括對(duì)頻域系數(shù)進(jìn)行標(biāo)準(zhǔn)的線性預(yù)測(cè)分析,得到預(yù)測(cè)增益和預(yù)測(cè)系數(shù);判斷預(yù)測(cè)增益是否超過(guò)設(shè)定的閾值,如果超過(guò),則根據(jù)預(yù)測(cè)系數(shù)對(duì)頻域系數(shù)進(jìn)行頻域線性預(yù)測(cè)誤差濾波,得到頻域系數(shù)的線性預(yù)測(cè)殘差序列;將預(yù)測(cè)系數(shù)轉(zhuǎn)換成線譜對(duì)頻率系數(shù),并對(duì)線譜對(duì)頻率系數(shù)進(jìn)行多級(jí)矢量量化處理,得到邊信息;對(duì)殘差序列進(jìn)行量化和熵編碼;如果預(yù)測(cè)增益未超過(guò)設(shè)定的閾值,則對(duì)頻域系數(shù)進(jìn)行量化和熵編碼。
10.根據(jù)權(quán)利要求6-9任一所述增強(qiáng)音頻編碼方法,其特征在于,所述步驟四進(jìn)一步包括對(duì)頻域系數(shù)進(jìn)行量化;判斷音頻信號(hào)是否為多聲道信號(hào),如果是多聲道信號(hào),則判斷左、右聲道信號(hào)的信號(hào)類(lèi)型是否一致,如果信號(hào)類(lèi)型一致,則判斷兩聲道對(duì)應(yīng)的尺度因子帶之間是否滿足和差立體聲編碼條件,如果滿足,則對(duì)該尺度因子帶中的譜系數(shù)進(jìn)行和差立體聲編碼,得到和差聲道的頻域系數(shù);如果不滿足,則該尺度因子帶中的譜系數(shù)不進(jìn)行和差立體聲編碼;如果是單聲道信號(hào)或信號(hào)類(lèi)型不一致的多聲道信號(hào),則對(duì)頻域系數(shù)不進(jìn)行處理;對(duì)頻域系數(shù)進(jìn)行熵編碼;其中所述判斷尺度因子帶是否滿足編碼條件的方法是K-L變換,具體是計(jì)算左右聲道尺度因子帶的譜系數(shù)的相關(guān)矩陣;對(duì)相關(guān)矩陣進(jìn)行K-L變換;如果旋轉(zhuǎn)角度α的絕對(duì)值偏離π/4較小時(shí),如3π/16<|α|<5π/16,則對(duì)應(yīng)的尺度因子帶可以進(jìn)行和差立體聲編碼;所述和差立體聲編碼為M^S^=101-1L^R^,]]>其中 表示量化后的和聲道頻域系數(shù); 表示量化后的差聲道頻域系數(shù); 表示量化后的左聲道頻域系數(shù); 表示量化后的右聲道頻域系數(shù)。
11.根據(jù)權(quán)利要求6-10任一所述增強(qiáng)音頻編碼方法,其特征在于,在所述步驟一之前,還包括重采樣步驟和頻帶擴(kuò)展步驟;所述的重采樣步驟,對(duì)輸入音頻信號(hào)進(jìn)行重采樣,改變音頻信號(hào)的采樣率;所述的頻帶擴(kuò)展步驟,在整個(gè)頻帶上分析輸入音頻信號(hào),提取其高頻譜包絡(luò)和信號(hào)譜特性參數(shù),作為信號(hào)復(fù)用的一部分。
12.一種增強(qiáng)音頻解碼裝置,包括比特流解復(fù)用模塊、熵解碼模塊、逆量化器組、頻率-時(shí)間映射模塊,其特征在于,還包括多分辨率綜合模塊;所述比特流解復(fù)用模塊用于對(duì)壓縮音頻數(shù)據(jù)流進(jìn)行解復(fù)用,并向所述熵解碼模塊和多分辨率綜合模塊輸出相應(yīng)的數(shù)據(jù)信號(hào)和控制信號(hào);所述熵解碼模塊用于對(duì)上述信號(hào)進(jìn)行解碼處理,恢復(fù)譜的量化值,輸出到所述逆量化器組;所述逆量化器組用于重建逆量化譜,并輸出到所述到多分辨率綜合模塊;所述多分辨率綜合模塊用于對(duì)逆量化譜進(jìn)行多分辨率綜合,并輸出到所述頻率-時(shí)間映射模塊;所述頻率-時(shí)間映射模塊用于對(duì)譜系數(shù)進(jìn)行頻率-時(shí)間映射,輸出時(shí)域音頻信號(hào)。
13.根據(jù)權(quán)利要求12所述的增強(qiáng)音頻解碼裝置,其特征在于,所述多分辨率綜合模塊包括系數(shù)重組模塊和系數(shù)變換模塊;所述系數(shù)變換模塊是頻域逆小波變換濾波器組或頻域逆修正離散余弦變換濾波器組。
14.根據(jù)權(quán)利要求12或13所述的增強(qiáng)音頻解碼裝置,其特征在于,還包括逆頻域線性預(yù)測(cè)及矢量量化模塊,位于所述逆量化器組的輸出與所述多分辨率綜合模塊的輸入之間;所述逆頻域線性預(yù)測(cè)及矢量量化模塊具體包括逆矢量量化器、逆轉(zhuǎn)換器和逆線性預(yù)測(cè)濾波器;所述逆矢量量化器用于對(duì)碼字索引進(jìn)行逆量化,得到線譜對(duì)頻率系數(shù);所述逆轉(zhuǎn)換器則用于將線譜對(duì)頻率系數(shù)逆轉(zhuǎn)換為預(yù)測(cè)系數(shù);所述逆線性預(yù)測(cè)濾波器用于根據(jù)預(yù)測(cè)系數(shù)將逆量化譜進(jìn)行逆濾波,得到預(yù)測(cè)前的譜。
15.根據(jù)權(quán)利要求12-14任一所述的增強(qiáng)音頻解碼裝置,其特征在于,還包括和差立體聲解碼模塊,位于所述逆量化器組之后或者位于所述熵解碼模塊的輸出與所述逆量化器組的輸入之間,接收所述比特流解復(fù)用模塊輸出的和差立體聲控制信號(hào),用于根據(jù)和差立體聲控制信息將和差聲道的逆量化譜/譜的量化值轉(zhuǎn)換成左右聲道的逆量化譜/譜的量化值。
16.一種增強(qiáng)音頻解碼方法,其特征在于,包括以下步驟步驟一、對(duì)壓縮音頻數(shù)據(jù)流進(jìn)行解復(fù)用,得到數(shù)據(jù)信息和控制信息;步驟二、對(duì)上述信息進(jìn)行熵解碼,得到譜的量化值;步驟三、對(duì)譜的量化值進(jìn)行逆量化處理,得到逆量化譜;步驟四、對(duì)逆量化譜進(jìn)行多分辨率綜合;步驟五、進(jìn)行頻率-時(shí)間映射,得到時(shí)域音頻信號(hào)。
17.根據(jù)權(quán)利要求16所述的增強(qiáng)音頻解碼方法,其特征在于,所述步驟四多分辨率綜合步驟具體是對(duì)逆量化譜系數(shù)按照子窗、尺度因子帶的順序排列,再按照頻序進(jìn)行重組,然后對(duì)重組的系數(shù)進(jìn)行多個(gè)逆修正離散余弦變換,得到多分辨率分析前的逆量化譜。
18.根據(jù)權(quán)利要求16所述的增強(qiáng)音頻解碼方法,其特征在于,所述步驟五可以進(jìn)一步包括進(jìn)行逆修正離散余弦變換,得到變換后的時(shí)域信號(hào);對(duì)變換后的時(shí)域信號(hào)在時(shí)域進(jìn)行加窗處理;對(duì)上述加窗時(shí)域信號(hào)進(jìn)行疊加處理,得到時(shí)域音頻信號(hào);其中所述加窗處理中的窗函數(shù)為w(N+k)=cos(pi/2*((k+0.5)/N-0.94*sin(2*pi/N*(k+0.5))/(2*pi))),其中k=0...N-1;w(k)表示窗函數(shù)的第k個(gè)系數(shù),有w(k)=w(2*N-1-k);N表示編碼幀的樣本數(shù)。
19.根據(jù)權(quán)利要求17或18所述的增強(qiáng)音頻解碼方法,其特征在于,在所述步驟三與步驟四之間,還包括判斷控制信息中是否包含有逆量化譜需要經(jīng)過(guò)逆頻域線性預(yù)測(cè)矢量量化的信息,如果含有,則進(jìn)行逆矢量量化處理,得到預(yù)測(cè)系數(shù),并利用預(yù)測(cè)系數(shù)對(duì)逆量化譜進(jìn)行線性預(yù)測(cè)合成,得到預(yù)測(cè)前的譜;將預(yù)測(cè)前的譜進(jìn)行頻率-時(shí)間映射;其中所述逆矢量量化處理進(jìn)一步包括從控制信息中獲得預(yù)測(cè)系數(shù)矢量量化后的碼字索引;再根據(jù)碼字索引得到量化的線譜對(duì)頻率系數(shù),并以此計(jì)算出預(yù)測(cè)系數(shù)。
20.根據(jù)權(quán)利要求16-19任一所述的增強(qiáng)音頻解碼方法,其特征在于,在所述步驟二與步驟三之間,還包括如果信號(hào)類(lèi)型分析結(jié)果表明信號(hào)類(lèi)型一致,則根據(jù)和差立體聲控制信號(hào)判斷是否需要對(duì)逆量化譜進(jìn)行和差立體聲解碼;如果需要,則根據(jù)每個(gè)尺度因子帶上的標(biāo)志位判斷該尺度因子帶是否需要和差立體聲解碼,如果需要,則將該尺度因子帶中的和差聲道的逆量化譜轉(zhuǎn)換成左右聲道的逆量化譜,轉(zhuǎn)至步驟三;如果信號(hào)類(lèi)型不一致或者不需要進(jìn)行和差立體聲解碼,則對(duì)逆量化譜不進(jìn)行處理,轉(zhuǎn)至步驟三;其中所述和差立體聲解碼是l^r^=101-1m^s^,]]>其中 表示量化后的和聲道頻域系數(shù); 表示量化后的差聲道頻域系數(shù); 表示量化后的左聲道頻域系數(shù); 表示量化后的右聲道頻域系數(shù)。
全文摘要
本發(fā)明公開(kāi)了一種增強(qiáng)音頻編碼裝置,包括心理聲學(xué)分析模塊、時(shí)頻映射模塊、量化和熵編碼模塊、比特流復(fù)用模塊、信號(hào)性質(zhì)分析模塊和多分辨率分析模塊;信號(hào)性質(zhì)分析模塊用于對(duì)輸入音頻信號(hào)進(jìn)行信號(hào)類(lèi)型分析;心理聲學(xué)分析模塊計(jì)算音頻信號(hào)的掩蔽閾值和信掩比,輸出到所述量化和熵編碼模塊;多分辨率分析模塊根據(jù)信號(hào)類(lèi)型進(jìn)行多分辨率分析,量化和熵編碼模塊在信掩比的控制下對(duì)頻域系數(shù)進(jìn)行量化和熵編碼,比特流復(fù)用模塊形成音頻編碼碼流。本發(fā)明適用于多種采樣率、聲道配置的音頻信號(hào)的高保真壓縮編碼,可以支持采樣率為8kHz到192kHz之間的音頻信號(hào);可支持所有可能的聲道配置;并且支持范圍很寬的目標(biāo)碼率的音頻編/解碼。
文檔編號(hào)G10L19/00GK1677492SQ20041004633
公開(kāi)日2005年10月5日 申請(qǐng)日期2004年6月3日 優(yōu)先權(quán)日2004年4月1日
發(fā)明者潘興德, 安德斯·葉瑞特, 朱曉明, 麥可·舒克, 任為民, 王磊, 豪格·何瑞施, 鄧昊, 佛里德理克·海恩 申請(qǐng)人:北京宮羽數(shù)字技術(shù)有限責(zé)任公司, 北京阜國(guó)數(shù)字技術(shù)有限公司, 編碼技術(shù)有限公司