基于DSP的G.729語音編解碼器設(shè)計
摘要:設(shè)計了基于DSP的G.729語音編解碼器,并針對G.729算法標(biāo)準(zhǔn)源碼代碼效率低、執(zhí)行時間長的不足,從算法精簡、代碼優(yōu)化等方面進(jìn)行了優(yōu)化。優(yōu)化后的算法在保證了高質(zhì)量語音輸出的同時,提高了編碼效率,實現(xiàn)了對語音信號的實時處理。最后對系統(tǒng)性能進(jìn)行了測試,結(jié)果滿足設(shè)計要求。
關(guān)鍵詞:G.729;DSP;語音編碼;算法優(yōu)化
0 引言
語音信號處理是現(xiàn)代通信研究的重要內(nèi)容之一,語音壓縮編碼作為其關(guān)鍵技術(shù),如今已得到了極大的發(fā)展。G.729是國際電信聯(lián)盟(ITU)于1996年提出的采用共軛結(jié)構(gòu)代數(shù)碼激勵線性預(yù)測(CS-ACELP)的語音編碼算法,由于其具有低速率、低延時、高質(zhì)量等優(yōu)點(diǎn),被廣泛應(yīng)用于數(shù)字通信系統(tǒng),如IP電話、視頻會議、移動通信等。數(shù)字信號處理器(DSP)價格低廉,并具有強(qiáng)大的運(yùn)算能力,用它來實現(xiàn)G.729算法具有很大的現(xiàn)實意義。近年來,國內(nèi)外研究基于DSP的G.729語音編碼算法的學(xué)者很多,但隨著無線通信系統(tǒng)用戶越來越多,以及DSP在結(jié)構(gòu)、性能上的巨大變化,怎樣使該算法在DSP上最高效的實現(xiàn),依然是一個很重要的課題。
本文首先對G.729算法進(jìn)行了分析,然后結(jié)合DSP的特點(diǎn),分別進(jìn)行了系統(tǒng)的硬件和軟件設(shè)計。該系統(tǒng)不但滿足G.729算法要求,還可以作為其他語音編譯碼平臺;在此基礎(chǔ)上,本文針對ITU提供的標(biāo)準(zhǔn)源碼代碼效率低、執(zhí)行時間長等不足,提出了算法的具體優(yōu)化技術(shù),并對優(yōu)化結(jié)果進(jìn)行了比較分析。結(jié)果表明,優(yōu)化后的算法在保證語音質(zhì)量的同時,提高了編碼效率,實現(xiàn)了對語音信號的實時處理。
1 ITU-T G.729原理分析
ITU-T G.729算法以自適應(yīng)預(yù)測編碼技術(shù)為基礎(chǔ),采用矢量量化、合成分析和感覺加權(quán)等技術(shù)。其編碼速率達(dá)到8 Kb/s,合成語音質(zhì)量不低于32 Kb/sADPCM的水平。
該算法要求輸入信號為8 kHz取樣、16 b線性PCM信號。在編碼器端,每80樣點(diǎn)為一幀(每幀再分為兩個子幀),分析并提取語音信號各種參數(shù)(LPC濾波器系數(shù)、自適應(yīng)碼書和固定碼書的編號、自適應(yīng)碼字增益和固定碼字增益),把這些參數(shù)進(jìn)行80 b編碼發(fā)送。
在解碼端,把收到的比特流恢復(fù)成參數(shù)編碼,解碼后得到各個參數(shù),用自適應(yīng)碼書編號從自適應(yīng)碼書中得到自適應(yīng)碼字,用固定碼書編號從固定碼書中得到固定碼字,分別乘以它們的增益,按點(diǎn)相加后構(gòu)成激勵序列。激勵LPC綜合濾波器重構(gòu)語音(綜合濾波器由LPC系數(shù)構(gòu)成)。重構(gòu)語音信號在輸出前經(jīng)過后置處理,包括長時后置濾波、短時綜合濾波和高通濾波。
2 系統(tǒng)硬件設(shè)計
系統(tǒng)硬件結(jié)構(gòu)圖如圖1所示。其中DSP芯片采用TI公司的TMS320VC5416,音頻接口采用16位音頻編解碼芯片TLV320AIC23,SRAM和FLASH分別采用芯片CY7C1041CV33和SST39VF400。此外,系統(tǒng)還配有電源芯片、電壓轉(zhuǎn)換芯片、CPLD(EPM3128ATC100)等。
系統(tǒng)編碼流程為:由音頻接口芯片TLV320AIC23將模擬信號轉(zhuǎn)換成8K×16 b/s的數(shù)字信號,采樣后的數(shù)字信號通過多通道緩沖串口McB-SP0傳送到DSP的內(nèi)部緩沖區(qū),當(dāng)緩沖區(qū)內(nèi)的數(shù)據(jù)積累到一幀(80×16 b)時啟動編碼程序,編碼完成后將8 Kb/s的壓縮碼流通過數(shù)字接口(Mc-BSP2)輸出至信道。
系統(tǒng)解碼流程為:由McBSP2將信道發(fā)送來的數(shù)字碼流接收至DSP的內(nèi)部接收緩沖區(qū),然后經(jīng)DSP進(jìn)行解碼處理,解碼后的數(shù)字語音通過Mc-BSP0發(fā)送給TLV320AIC23,經(jīng)過D/A轉(zhuǎn)換恢復(fù)出原始語音信號。由此,該系統(tǒng)最終實現(xiàn)了語音的采集、編碼、發(fā)送和接收、解碼、播放的功能。
評論