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