新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于DSP的G.729語音編解碼算法的優(yōu)化和實(shí)現(xiàn)

基于DSP的G.729語音編解碼算法的優(yōu)化和實(shí)現(xiàn)

作者: 時(shí)間:2009-02-09 來源:網(wǎng)絡(luò) 收藏

隨著多媒體信息技術(shù)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,信息量快速增長,使信道資源顯得越來越寶貴。為了在有限的信道資源下傳輸盡可能多的信息,語音壓縮成為必要手段。ITU組織(國際電信聯(lián)盟)在l996年制定了G.729協(xié)議,即共軛結(jié)構(gòu)碼激勵(lì)線性預(yù)測(cè)編碼算法(CS-ACELP)。其編碼速率為8kb/s,可以滿足網(wǎng)絡(luò)通信的要求,具有良好的語音質(zhì)量,對(duì)不同的應(yīng)用環(huán)境有較強(qiáng)的適應(yīng)性,是一種性能較好的語音壓縮國際標(biāo)準(zhǔn),被廣泛應(yīng)用在個(gè)人移動(dòng)通信、衛(wèi)星通信等各個(gè)領(lǐng)域。

  1 G.729編解碼算法的原理

  語音信號(hào)的波形編碼力圖使重建語音波形保持原始語音信號(hào)的波形形狀。這類編碼器通常將語音信號(hào)作為一般的波形信號(hào)來處理,它具有適應(yīng)能力強(qiáng)、語音質(zhì)量好等優(yōu)點(diǎn),但所需用的編碼速率高。參數(shù)編碼通過對(duì)語音信號(hào)特征參數(shù)的提取及編碼來降低編碼速率,力圖使重建語音信號(hào)盡可能保持原語音的語意,而重建信號(hào)的波形同原語音信號(hào)的波形可能會(huì)有相當(dāng)大的差別。二十世紀(jì)70年代中期,特別是80年代以來,技術(shù)有了突破性的進(jìn)展,提出了一些非常有效的處理方法,如混合編碼。這種算法克服了原有波形編碼器與聲碼器的弱點(diǎn),而結(jié)合了它們各自的長處,在4kb/s~16kb/s速率上能夠得到高質(zhì)量合成語音,而在本質(zhì)上也具有波形編碼的優(yōu)點(diǎn)。G.729所描述的CS-ACELP(Conjugate-Structure Al2gebraic-Coder-Excited Linear Prediction)聲碼器采用的CELP聲碼器就屬于這類編碼器。

  CELP編碼基于合成分析(A-B-S)的搜索過程、感知加權(quán)矢量量化(VQ)和線性預(yù)測(cè)(LP)技術(shù),采用這種編碼方案使傳輸?shù)谋忍芈蚀蟠蠼档?。CS-ACELP的思想是由共軛結(jié)構(gòu)碼線性預(yù)測(cè)(CS-CELP)和代數(shù)碼本激勵(lì)線性預(yù)測(cè)(ACELP)的思想整合而來的。在編碼端,主要進(jìn)行有線譜對(duì)(LSP)參數(shù)的量化、基音分析、固定碼本搜索和增益量化四個(gè)步驟。編碼器首先對(duì)輸入信號(hào)(8kHz采樣16bit PCM信號(hào))進(jìn)行預(yù)處理,然后對(duì)每幀語音信號(hào)進(jìn)行線性預(yù)測(cè),得到LPC系數(shù),并把LPC參數(shù)轉(zhuǎn)換成LSP參數(shù),最后對(duì)LSP參數(shù)進(jìn)行矢量量化。在接下來的基音分析中,每一幀先搜索到最佳基音時(shí)延T的一個(gè)候選時(shí)延,然后依據(jù)候選時(shí)延搜索每一幀的最佳基音時(shí)延。最后還要對(duì)自適應(yīng)碼本增益和固定碼本增益進(jìn)行量化。在解碼端,首先由接收到的比特流得到各種參數(shù)標(biāo)志進(jìn)行解碼,得到10ms語音幀編碼參數(shù)。解碼器在每一子幀內(nèi),對(duì)LSP系數(shù)進(jìn)行內(nèi)插,并把它們變換成LP濾波器系數(shù)后,依次進(jìn)行激勵(lì)生成、語音合成和后處理工作。

2 和DSP應(yīng)用改進(jìn)

  G.729語音編解碼系統(tǒng)要求實(shí)時(shí)性高,需在有限的時(shí)間內(nèi)對(duì)外部輸入的信號(hào)完成指定處理,即信號(hào)處理的速度必須大于等于輸入信號(hào)更新的速度,因此需要進(jìn)行算法的優(yōu)化改進(jìn)。對(duì)C語言編寫的代碼進(jìn)行優(yōu)化,同時(shí)使用內(nèi)聯(lián)指令,又在C程序中嵌入?yún)R編語句,盡量提高信號(hào)處理的速度。

  2.1 算法的優(yōu)化改進(jìn)

  首先在算法上進(jìn)行改進(jìn),如圖1所示,采用一種結(jié)合WD-LSP(Weighted Delta-LSP)[1]函數(shù)并結(jié)合次最優(yōu)部分碼本快速搜索的CS-ACELP算法,同時(shí)采用基于聲學(xué)心理模型的知覺加權(quán)濾波器,使在不降低語音質(zhì)量的情況下降低計(jì)算復(fù)雜度。WD-LSP函數(shù)主要用于區(qū)分UV-V(unvoice-voice)/S-V(silence-voice)的邊界。其原理是:如果函數(shù)值大于給定的極限值η,則開環(huán)基音延遲Top重新估計(jì),否則,開環(huán)基音延遲Top用前一幀自適應(yīng)碼本延遲來更新。在第i幀F(xiàn)i的WD-LSP函數(shù)和用于確定開環(huán)基音延遲Top的算法如下:

  基于TMS320C5416的G.729語音編解碼算法的優(yōu)化和實(shí)現(xiàn)

  其中LSPi(k)是在第i幀中的k階LSP系數(shù);wk是加權(quán)系數(shù),它用于增強(qiáng)UV-V/S-V邊界的WD-LSP函數(shù)。為了獲取wk,一個(gè)包含23 014個(gè)UV-V邊界和9 519個(gè)S-V邊界的大型數(shù)據(jù)庫用于估計(jì)delta-LSP在UV-V/S-V邊界的平方根值(RMS)。因此,WD-LSP用于檢測(cè)VU-V/S-V邊界非常敏感。η是一個(gè)設(shè)為0.01的極限值。整個(gè)計(jì)算可節(jié)省21%的計(jì)算量,經(jīng)過這種算法前后語音信號(hào)如圖2所示。

  基于TMS320C5416的G.729語音編解碼算法的優(yōu)化和實(shí)現(xiàn)

基于TMS320C5416的G.729語音編解碼算法的優(yōu)化和實(shí)現(xiàn)

  2.2 進(jìn)行C語言優(yōu)化

  基于G.729標(biāo)準(zhǔn)的聲碼器最終在定點(diǎn)上實(shí)時(shí)實(shí)現(xiàn)。在定點(diǎn)內(nèi),浮點(diǎn)數(shù)是通過將小數(shù)點(diǎn)固定在特定位置來表示的,這是定點(diǎn)的局限之一。為了區(qū)分小數(shù)的不同值域,使用了Q-格式。不同的Q-格式在于小數(shù)點(diǎn)的位置不同,因此整數(shù)域也不同。當(dāng)兩個(gè)數(shù)相乘時(shí),會(huì)產(chǎn)生一個(gè)特殊的符號(hào)位。如:兩個(gè)Q4數(shù)相乘, 需要附加一個(gè)左移的操作以去除這個(gè)多余的符號(hào)位,乘積應(yīng)該是一個(gè)Q9格式的。如果DSP中的FRST位被置位,這個(gè)去除多余符號(hào)位的移位操作能夠自動(dòng)完成。對(duì)于16位數(shù)的乘法運(yùn)算,應(yīng)該得到32 位的乘積。但是,由于只需要16位的積,該32位乘積中只有高16位被存儲(chǔ)下來,積的低16位被丟棄。為了達(dá)到高準(zhǔn)確性,在連續(xù)的乘法運(yùn)算過程中(如卷積),應(yīng)該一直保持32位的計(jì)算結(jié)果,只對(duì)最終的計(jì)算結(jié)果進(jìn)行丟棄低16位的截短操作。為了達(dá)到更高的準(zhǔn)確性,在這一操作過程中會(huì)使用到一種雙重精度格式, 這種格式僅僅出現(xiàn)在使用單精度不夠,而又不必要使用32位精度的時(shí)候。兩個(gè)32位數(shù)相乘,只需要32位的乘積,而不是64位,不過注意到TMS320C5416是16位的,所以在雙重精度格式中,32位整數(shù)分為高位字和低位字。高、低位字中都含有符號(hào)位,以進(jìn)行快乘運(yùn)算。其格式如下:

  L_32=hi_word16+lo_word1

   Hi_word=L_32>>16

   Lo_word=L_32-hi_word>>1

   當(dāng)累加器中的數(shù)值超過一定范圍時(shí)將會(huì)產(chǎn)生溢出。在G.729算法標(biāo)準(zhǔn)中, 累加器的值被限定在80000000~7FFFFFFF之內(nèi)——即最小負(fù)數(shù)和最大正數(shù)。不過在TMS320C5416中,如果將PMST寄存器中的OVM置位,則溢出會(huì)得到自動(dòng)處理。


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉