G.729語(yǔ)音編碼算法研究及基于DSP的實(shí)現
2.2 系統軟件設計
本設計中McBSP0口接收數據處理,主要進(jìn)行話(huà)音編碼,并將編碼比特流從HPI接口送出,HPI接口接收數據處理,主要進(jìn)行話(huà)音解碼,并將解碼后的PCM數據從McBSP0口送出。軟件系統為了保證McBSP0和HPI接口接收數據的正常處理,還需實(shí)現一些輔助功能模塊包括:系統初始化模塊、支持系統在線(xiàn)配置的模塊以及系統收發(fā)數據的同步檢測模塊。系統軟件流程如圖4所示。
2.2.1 編碼過(guò)程
G.729編碼器的流程如圖5所示。首先,編碼器會(huì )初始化,主要是初始化各緩沖區;然后編碼器對輸入的原始語(yǔ)音信號進(jìn)行預處理,包括高通濾波和幅度減半。其中,高通濾波的截止頻率為140 Hz,它是一個(gè)二階的零極點(diǎn)濾波器,目的是要去除輸入信號中的低頻十擾。對輸入信號進(jìn)行預處理以后,編碼器開(kāi)始編碼,這是通過(guò)調用匯編函數Coder_ld8a實(shí)現的;編碼產(chǎn)生的參數使用函數prm2bits轉化為比特流,送到信道里傳輸。
2.2.2 解碼過(guò)程
G.729解碼器流程如圖6所示。與編碼器類(lèi)似,解碼器首先要進(jìn)行初始化,特別是初始化緩沖區;接著(zhù)解碼器從輸入碼流中提取參數;由于碼流在信道的傳輸過(guò)程中可能發(fā)牛錯誤,所以從碼流中提取得到參數后應該進(jìn)行奇偶校驗,以確定參數是正確的;通過(guò)了奇偶校驗后,解碼器正式開(kāi)始解碼,這是通過(guò)調用匯編函數Decod_ld8a實(shí)現的;解碼重建語(yǔ)音信號后,還應該進(jìn)行后濾波和后處理。其中,后處理起高通濾波和幅度翻倍的作用。
3 系統編解碼算法性能測試
編解碼算法性能包括兩方面:運算量和存儲要求。要達到高性能,不僅要運算量低,而且存儲器使用也要少。表3和表4分別列出了編解碼器的運算量和存儲器使用情況。
評論