資料介紹
隨著通信、計算機網(wǎng)絡(luò)等技術(shù)的飛速發(fā)展,日益增加的客戶需求量和現(xiàn)有的通信信道容量之間的矛盾愈發(fā)突出。如何在有限的信道資源下,通過壓縮信源以提高傳輸效率已成為當(dāng)前急需解決的問題之一。為此誕生了許多語音壓縮處理方法,G.723.1語音編碼算法便是ITU-T(國際電信聯(lián)盟電信標準化部門)制定的H.324協(xié)議簇首推的標準算法,主要用于低比特率多媒體業(yè)務(wù)的話音或其他音頻信號分量的壓縮。它是一種雙速率語音編碼標準,其中6.3 kb/s的速率提供了良好的話音質(zhì)量,而5.3kb/s的速率在提供較好通話質(zhì)量的同時,也為系統(tǒng)設(shè)計者提供了更適合的靈活性[1]。
1 算法原理
??? G.723.1語音編碼算法按幀(Frame)對語音數(shù)據(jù)進行壓縮和解壓縮,每幀240個采樣點,壓縮傳遞的參數(shù)包括線性預(yù)測系數(shù)、自適應(yīng)碼本的延時和增益、激勵脈沖位置、符號及格點比特等。
首先進行高通濾波,去掉直流分量;接著把一幀信號分成4個子幀,每個子幀60個采樣點,分別進行10階線性預(yù)測分析(LPC),得到各子幀的LPC參數(shù),把最后一個子幀的LPC參數(shù)轉(zhuǎn)化成線譜對(LSP)參數(shù)進行矢量量化編碼,送到解碼器。利用未量化的LPC參數(shù)構(gòu)造短時感知加權(quán)濾波器,信號濾波后得到感覺加權(quán)的語音信號。每2個子幀(120樣點)搜索一個開環(huán)基音值,并以此為依據(jù)為每一個子幀構(gòu)造一個諧波噪聲成形濾波器,對感知加權(quán)的語音信號進行濾波。每一子幀的LPC綜合濾波器、感覺加權(quán)濾波器和諧波噪聲成形濾波器聯(lián)起來,構(gòu)成一個聯(lián)合濾波器,利用它的沖激響應(yīng)和開環(huán)基音周期,對每一子幀進行閉環(huán)基音搜索,對開環(huán)搜索的結(jié)果進行修正。同時通過一個五階基音預(yù)測器對信號進行預(yù)測,得到相應(yīng)子幀的殘差信號。最后進行固定碼本搜索,也就是對每一子幀的殘差信號進行矢量量化,對應(yīng)兩種不同的編碼速率采用兩種不同的方法:編碼速率為6.3kb/s時,采用多脈沖最大似然量化(MP-MLQ)的方法,具有較高的重建語音質(zhì)量;編碼速率為5.3kb/d時,采用代數(shù)碼本激勵線性預(yù)測(ACELP)方法。
算法的解碼也是按幀進行,主要對符合ITU-TG.723.1的碼流進行解碼,得到相應(yīng)的參數(shù),根據(jù)語音產(chǎn)生的機理,合成語音信號。讀入一幀碼流后,分別進行LSP參數(shù)、基音周期和激勵脈沖信號解碼,對LSP參數(shù)插值,然后轉(zhuǎn)化成各子幀的線性預(yù)測系數(shù),構(gòu)成LPC綜合濾波器。通過基音周期和激勵脈沖得到每一子幀的殘差信號,經(jīng)過基音后濾波,輸入到LPC綜合濾波器,產(chǎn)生合成語音信號。經(jīng)過共振峰后濾波和增益控制,形成高質(zhì)量的重建語音信號。
2 算法實現(xiàn)
2.1 硬件設(shè)計
在選擇DSP芯片時,考慮了語音壓縮編碼算法的復(fù)雜度以及運算量,并對DPS芯片本身的運算能力、存儲空間大小、性能價格比、開發(fā)軟件的完整性等多方面進行綜合比較,最終選用TIC54xx系列的定點運算處理器TMS320C5416,開發(fā)平臺是TMS320C5416 DSK。
TMS320C5416的單指令周期為6.25ms,每秒執(zhí)行的指令數(shù)為160M,使用了6級指令流水線結(jié)構(gòu),這些都很適合G.723.1語音編碼算法的實現(xiàn)。采用一個40 bitALU、128K×16 bit片內(nèi)RAM(包括64 kB的片內(nèi)DARAM和64 KB的片內(nèi)SARAM)、3個獨立的16bit數(shù)據(jù)內(nèi)存總線、1個程序內(nèi)存總線、3個McBSP、6信道DMA控制器、1個8/16 bit并行增強主機端口接口及2個16 bit計時器[2,3]。
在DSK的基礎(chǔ)上,可以搭建出語音開發(fā)硬件系統(tǒng)平臺,如圖1所示。
?
輸入語音信號由麥克風(fēng)輸入,經(jīng)過立體聲音頻多媒體數(shù)字信號編碼芯片PCM3002 A/D轉(zhuǎn)換后成為數(shù)字信號,接著送入DSP內(nèi)進行編碼壓縮處理。處理后的數(shù)據(jù)經(jīng)過解壓得到重建的語音信號,最后送入PCM3002 D/A轉(zhuǎn)換為模擬信號,通過耳機或揚聲器得以收聽到。
2.2 算法實現(xiàn)流程
根據(jù)G.723.1算法,設(shè)計實現(xiàn)流程如圖2所示。
?
從流程圖中可以看到,首先關(guān)閉中斷、初始化DSP芯片和開發(fā)平臺;然后進行程序運行前的硬件配置,主要是配置外設(shè),打開DMA和McBSP。配置結(jié)束后打開中斷屏蔽控制寄存器,等待中斷的到來。McBSP接收中斷發(fā)生時,DMA接收PCM3002發(fā)來的數(shù)據(jù)并存入緩沖區(qū),并判斷是否滿一幀240個數(shù)據(jù)。如果不滿幀,就直接等待下一次McBSP接收中斷;如果滿一幀,通過DMA通道3將240個語音數(shù)據(jù)復(fù)制到緩沖區(qū)BUFF1,同時置位新幀標志位new_data,然后對數(shù)據(jù)進行編解碼處理。整個編解碼結(jié)束后,將得到的一幀240個合成語音數(shù)據(jù)復(fù)制到緩沖區(qū)BUFF2中,等待新幀標志位重新置1后進行下一幀的編解碼處理。McBSP發(fā)送中斷時,DMA把發(fā)送緩沖區(qū)的一個數(shù)據(jù)發(fā)送給PCM3002后,判斷是否滿一幀。如果不滿幀,就直接等到下一次McBSP發(fā)送中斷;如果滿一幀,即PCM3002接收到了240個數(shù)據(jù),則把BUFF2中新一幀240個合成語音數(shù)據(jù)復(fù)制到發(fā)送緩沖區(qū),等待下一次McBSP發(fā)送中斷。
1 算法原理
??? G.723.1語音編碼算法按幀(Frame)對語音數(shù)據(jù)進行壓縮和解壓縮,每幀240個采樣點,壓縮傳遞的參數(shù)包括線性預(yù)測系數(shù)、自適應(yīng)碼本的延時和增益、激勵脈沖位置、符號及格點比特等。
首先進行高通濾波,去掉直流分量;接著把一幀信號分成4個子幀,每個子幀60個采樣點,分別進行10階線性預(yù)測分析(LPC),得到各子幀的LPC參數(shù),把最后一個子幀的LPC參數(shù)轉(zhuǎn)化成線譜對(LSP)參數(shù)進行矢量量化編碼,送到解碼器。利用未量化的LPC參數(shù)構(gòu)造短時感知加權(quán)濾波器,信號濾波后得到感覺加權(quán)的語音信號。每2個子幀(120樣點)搜索一個開環(huán)基音值,并以此為依據(jù)為每一個子幀構(gòu)造一個諧波噪聲成形濾波器,對感知加權(quán)的語音信號進行濾波。每一子幀的LPC綜合濾波器、感覺加權(quán)濾波器和諧波噪聲成形濾波器聯(lián)起來,構(gòu)成一個聯(lián)合濾波器,利用它的沖激響應(yīng)和開環(huán)基音周期,對每一子幀進行閉環(huán)基音搜索,對開環(huán)搜索的結(jié)果進行修正。同時通過一個五階基音預(yù)測器對信號進行預(yù)測,得到相應(yīng)子幀的殘差信號。最后進行固定碼本搜索,也就是對每一子幀的殘差信號進行矢量量化,對應(yīng)兩種不同的編碼速率采用兩種不同的方法:編碼速率為6.3kb/s時,采用多脈沖最大似然量化(MP-MLQ)的方法,具有較高的重建語音質(zhì)量;編碼速率為5.3kb/d時,采用代數(shù)碼本激勵線性預(yù)測(ACELP)方法。
算法的解碼也是按幀進行,主要對符合ITU-TG.723.1的碼流進行解碼,得到相應(yīng)的參數(shù),根據(jù)語音產(chǎn)生的機理,合成語音信號。讀入一幀碼流后,分別進行LSP參數(shù)、基音周期和激勵脈沖信號解碼,對LSP參數(shù)插值,然后轉(zhuǎn)化成各子幀的線性預(yù)測系數(shù),構(gòu)成LPC綜合濾波器。通過基音周期和激勵脈沖得到每一子幀的殘差信號,經(jīng)過基音后濾波,輸入到LPC綜合濾波器,產(chǎn)生合成語音信號。經(jīng)過共振峰后濾波和增益控制,形成高質(zhì)量的重建語音信號。
2 算法實現(xiàn)
2.1 硬件設(shè)計
在選擇DSP芯片時,考慮了語音壓縮編碼算法的復(fù)雜度以及運算量,并對DPS芯片本身的運算能力、存儲空間大小、性能價格比、開發(fā)軟件的完整性等多方面進行綜合比較,最終選用TIC54xx系列的定點運算處理器TMS320C5416,開發(fā)平臺是TMS320C5416 DSK。
TMS320C5416的單指令周期為6.25ms,每秒執(zhí)行的指令數(shù)為160M,使用了6級指令流水線結(jié)構(gòu),這些都很適合G.723.1語音編碼算法的實現(xiàn)。采用一個40 bitALU、128K×16 bit片內(nèi)RAM(包括64 kB的片內(nèi)DARAM和64 KB的片內(nèi)SARAM)、3個獨立的16bit數(shù)據(jù)內(nèi)存總線、1個程序內(nèi)存總線、3個McBSP、6信道DMA控制器、1個8/16 bit并行增強主機端口接口及2個16 bit計時器[2,3]。
在DSK的基礎(chǔ)上,可以搭建出語音開發(fā)硬件系統(tǒng)平臺,如圖1所示。
?
輸入語音信號由麥克風(fēng)輸入,經(jīng)過立體聲音頻多媒體數(shù)字信號編碼芯片PCM3002 A/D轉(zhuǎn)換后成為數(shù)字信號,接著送入DSP內(nèi)進行編碼壓縮處理。處理后的數(shù)據(jù)經(jīng)過解壓得到重建的語音信號,最后送入PCM3002 D/A轉(zhuǎn)換為模擬信號,通過耳機或揚聲器得以收聽到。
2.2 算法實現(xiàn)流程
根據(jù)G.723.1算法,設(shè)計實現(xiàn)流程如圖2所示。
?
從流程圖中可以看到,首先關(guān)閉中斷、初始化DSP芯片和開發(fā)平臺;然后進行程序運行前的硬件配置,主要是配置外設(shè),打開DMA和McBSP。配置結(jié)束后打開中斷屏蔽控制寄存器,等待中斷的到來。McBSP接收中斷發(fā)生時,DMA接收PCM3002發(fā)來的數(shù)據(jù)并存入緩沖區(qū),并判斷是否滿一幀240個數(shù)據(jù)。如果不滿幀,就直接等待下一次McBSP接收中斷;如果滿一幀,通過DMA通道3將240個語音數(shù)據(jù)復(fù)制到緩沖區(qū)BUFF1,同時置位新幀標志位new_data,然后對數(shù)據(jù)進行編解碼處理。整個編解碼結(jié)束后,將得到的一幀240個合成語音數(shù)據(jù)復(fù)制到緩沖區(qū)BUFF2中,等待新幀標志位重新置1后進行下一幀的編解碼處理。McBSP發(fā)送中斷時,DMA把發(fā)送緩沖區(qū)的一個數(shù)據(jù)發(fā)送給PCM3002后,判斷是否滿一幀。如果不滿幀,就直接等到下一次McBSP發(fā)送中斷;如果滿一幀,即PCM3002接收到了240個數(shù)據(jù),則把BUFF2中新一幀240個合成語音數(shù)據(jù)復(fù)制到發(fā)送緩沖區(qū),等待下一次McBSP發(fā)送中斷。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 基于DSP的語音分析系統(tǒng)附錄 8次下載
- 使用FPGA實現(xiàn)MELP語音壓縮編碼器的詳細資料說明 17次下載
- 基于TMS320C6201的G.723.1多通道語音編解碼分析 1次下載
- 詳解G.723.1算法在DSP上的優(yōu)化 0次下載
- 語音編解碼算法G.723.1在DSP上的優(yōu)化 0次下載
- 基于DSP的G.729A語音壓縮算法測試分析 0次下載
- 基于DSP的語音編解碼算法G.723.1優(yōu)化分析 0次下載
- 基于DSP的G.723.1數(shù)字對講機基帶系統(tǒng)中的應(yīng)用分析 0次下載
- G7231算法在DSP上的優(yōu)化
- 基于TMS320C6713的G.723.1語音編解碼的實時實
- G.723.1 語音壓縮算法的分析及DSP實現(xiàn)
- 基于DSP芯片的MELP聲碼器的算法實現(xiàn)
- TD-SCDMA中AMR語音編碼器的實現(xiàn)
- 基于DSP 的MPEGI 音頻第三層編碼算法的硬件實現(xiàn)
- G.729語音編碼器定點DSP的實時實現(xiàn)
- 軟DSP處理用于語音引擎設(shè)計是需注意哪些事項 2360次閱讀
- 采用數(shù)字信號處理器實現(xiàn)MPEG-4視頻編碼卡的設(shè)計 1932次閱讀
- 利用DSP芯片實現(xiàn)MPEG-4視頻編碼的優(yōu)化設(shè)計 2316次閱讀
- 實現(xiàn)ARM和DSP或協(xié)處理器的通信和協(xié)同工作,有什么解決方案和實現(xiàn)指南 1748次閱讀
- SinoV-100AI單網(wǎng)口單FXS IAD語音網(wǎng)關(guān)詳細參數(shù)介紹 2511次閱讀
- 淺談SinoV-200I 2FXS IAD語音網(wǎng)關(guān) 2227次閱讀
- 關(guān)于空時編碼算法的仿真研究及其DSP+FPGA的硬件實現(xiàn)詳解 1957次閱讀
- 以DSP和FPGA協(xié)同技術(shù)設(shè)計實現(xiàn)的高性能視頻編碼器視頻采集設(shè)計 788次閱讀
- 多帶激勵語音編碼SA5.0C-BPDF資料的實現(xiàn) 1448次閱讀
- 3G手機語音識別的兩種方法分析 1408次閱讀
- JPEG2000 MQ編碼算法的優(yōu)化和FPGA實現(xiàn) 3396次閱讀
- 基于SVPWM算法的變頻調(diào)速系統(tǒng)設(shè)計方案 5144次閱讀
- 基于ADPCM的數(shù)字語音存儲與回放系統(tǒng)設(shè)計方案 4898次閱讀
- 基于DSP的語音識別系統(tǒng)的實現(xiàn)及分析 9988次閱讀
- 實數(shù)FFT算法的設(shè)計及其C語言實現(xiàn) 1w次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1489次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關(guān)電源設(shè)計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風(fēng)扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關(guān)電源設(shè)計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多