資料介紹
MPEG聲音編碼是一種基于人耳聽覺特性的子帶聲音編碼算法,它屬于一種感覺聲音編碼方法。感覺聲音編碼算法的基本結構如圖1所示。根據編碼器著重于頻率分辨率還是時間分辨率,可分為子帶編碼器和變換編碼器.MPEG聲音第2層編碼算法在頻域上把聲音信號劃分為32個子帶,屬于一種子帶編碼器。在圖1 中,時頻映射也稱濾波器組,用于把輸入的聲音信號映射成亞抽樣的頻率分量。根據使用的濾波器組的性質,即濾波器組在頻域的分辨率的大小,這些頻率分量又可叫做子帶樣值或頻率線。
a
b
圖1 感覺聲音解碼器結構框圖
濾波器的輸出或者與濾波器組并行的時頻變換的輸出,提供給心理聲學模型以估計時間相關的聲音掩蔽門限。心理聲學模型使用了人們所知的同時掩蔽效應,包括有調音的掩蔽特性和無調音的掩蔽特性。如果使用聲音的前后掩蔽效應,還可進一步提高掩蔽門限估計的準確性。子帶樣值或頻率線按照盡量保證量化噪聲的頻譜處于掩蔽門限以下的準則進行量化和編碼,這樣能保證被人耳感知的量化引入的噪聲最小。根據對復雜度的要求,可以使用塊壓擴或熵編碼的分析合成方法。
幀打包把量化編碼的輸出和相關邊信息按照規(guī)定的格式組合起來,以便供解碼器使用。
2 編碼質量和DSP速度
單片ADSP-2181實現MPEG聲音編碼關鍵需要解決兩個問題:一是如何保證聲音編碼質量;其次是如何充分利用DSP的運算速度。而這兩個問題往往又是一對矛盾,需要找到其最佳結合點。
一般而言,決定MPEG聲音編碼器的優(yōu)劣主要是聲學模型的好壞。但是,對于使用單片16bit定點DSP的應用而言,這個結論就不再適用了。分析表明,此時有限字長效應對編碼質量的影響成了主要矛盾。特別是分析濾波器組,截尾效應竟帶來了33倍于16bitAD轉換量化誤差的噪聲,而窗系數的有限長度表示則使本來高達96dB旁瓣衰減的濾波器響應降低到不到70dB.因此,要保證聲音編碼質量,分析濾波器組算法必須進行精度擴展。
關于速度問題,首先想到的是使用快速算法,我們也嘗試了在子帶濾波中使用快速算法[4]。 但是,實踐證明,這些快速算法使用在DSP上效果并不理想,其原因有以下3條:(1)只考慮了加法和乘法的次數,而對附值、尋址等操作毫不關心,但對所有指令都是單周期的DSP而言,乘法和加法的次數相對其他操作并不顯得特別重要;(2)沒有考慮DSP的硬件特點,其算法不能充分發(fā)揮DSP的乘累加器(MAC)并行處理的能力;(3)ADSP-2181是為16位算法操作優(yōu)化的,在需要精度擴展的情況下,運算量將以數量級的速度急劇增加。
基于以上質量和速度要求的分析,我們選用了適合DSP乘累加指令的多相結構濾波器組實現方式,且采用基于MAC結構的精度擴展方法,較好地解決了編碼質量和DSP速度之間的矛盾。另外,對抽樣數據的輸入方式、心理聲學模型、比例因子編碼都進行了適于ADSP-2181的改進,減少了運算量,保證了實時性。
3 算法的軟件設計
軟件設計是MPEG聲音編碼的單片DSP實現的核心,編碼質量和速度的要求都需要通過精心設計DSP軟件才能實現。
?。?)基于MAC結構的精度擴展 MPEG聲音編碼的分析濾波器組可以有許多種實現方式,多相結構是MPEG標準推薦的一種,其數學表示為
(1)
?。?)
分析表明,對Yk進行雙字擴展可將截尾效應帶來的噪聲降低33倍。但是,考慮到ADSP-2181只支持16bit的乘累加運算,需要對式(1)進行轉化,即
?。?) Yk=HYk+2-16LYk
(4)
這樣,就可利用DSP的乘累加器結構,運算量只增加約1倍,存儲量只增加64個字。
?。?)輸入數據的組織 輸入數據的組織不但要考慮方便地從數模轉換器取得聲音原始數據,還要考慮輸入數據在片內數據RAM的存儲適合作為多相濾波器組和聲學模型的FFT運算的輸入。多相濾波器組每次移入32個新的聲音數據,移出32個舊的樣值,操作如下:
Xi=Xi-32,i=511,510,…,32
Xi=next-input-audio-sample,i=31,30,…,0
然而ADSP-2181并不適于實現數據的移動,每個賦值運算需要兩個指令才能完成,每次分析濾波操作需要1024個指令周期。如果利用ADSP- 2181的多通道自動緩沖串口及間接尋址能力,適當地組織輸入聲音數據,就可利用滑動窗的方法實現數據的移入和移出,如圖2所示。
圖2 多相濾波的滑動窗技術
為了保證幀邊界處理的連續(xù)性,輸入數據緩存應該設計成圓緩沖的形式,其長度應能存儲兩幀聲音輸入數據。當DSP在處理一幀數據時,輸入數據可以緩沖到另一幀。這樣,數據移動的開銷就節(jié)約了。同時,輸入數據的組織還要利于聲學模型的FFT運算,FFT需要利用ADSP-2181的地址反轉尋址模式。由于 FFT計算和輸入數據的緩存是同時進行的,所以FFT計算的指針需要地址反轉,而輸入緩沖的指針卻不能地址反轉,否則會導致輸入聲音數據排列混亂。 ADSP-2181提供這種能力,它的第一地址指針組I0,I1,I2,I3有地址反轉能力,而第二地址指針組I4,I5,I6,I7卻不受地址反轉模式的影響。所以從第二地址指針組中選擇指針進行輸入緩沖,從第一地址指針組中選擇指針進行FFT計算。
a
b
圖1 感覺聲音解碼器結構框圖
濾波器的輸出或者與濾波器組并行的時頻變換的輸出,提供給心理聲學模型以估計時間相關的聲音掩蔽門限。心理聲學模型使用了人們所知的同時掩蔽效應,包括有調音的掩蔽特性和無調音的掩蔽特性。如果使用聲音的前后掩蔽效應,還可進一步提高掩蔽門限估計的準確性。子帶樣值或頻率線按照盡量保證量化噪聲的頻譜處于掩蔽門限以下的準則進行量化和編碼,這樣能保證被人耳感知的量化引入的噪聲最小。根據對復雜度的要求,可以使用塊壓擴或熵編碼的分析合成方法。
幀打包把量化編碼的輸出和相關邊信息按照規(guī)定的格式組合起來,以便供解碼器使用。
2 編碼質量和DSP速度
單片ADSP-2181實現MPEG聲音編碼關鍵需要解決兩個問題:一是如何保證聲音編碼質量;其次是如何充分利用DSP的運算速度。而這兩個問題往往又是一對矛盾,需要找到其最佳結合點。
一般而言,決定MPEG聲音編碼器的優(yōu)劣主要是聲學模型的好壞。但是,對于使用單片16bit定點DSP的應用而言,這個結論就不再適用了。分析表明,此時有限字長效應對編碼質量的影響成了主要矛盾。特別是分析濾波器組,截尾效應竟帶來了33倍于16bitAD轉換量化誤差的噪聲,而窗系數的有限長度表示則使本來高達96dB旁瓣衰減的濾波器響應降低到不到70dB.因此,要保證聲音編碼質量,分析濾波器組算法必須進行精度擴展。
關于速度問題,首先想到的是使用快速算法,我們也嘗試了在子帶濾波中使用快速算法[4]。 但是,實踐證明,這些快速算法使用在DSP上效果并不理想,其原因有以下3條:(1)只考慮了加法和乘法的次數,而對附值、尋址等操作毫不關心,但對所有指令都是單周期的DSP而言,乘法和加法的次數相對其他操作并不顯得特別重要;(2)沒有考慮DSP的硬件特點,其算法不能充分發(fā)揮DSP的乘累加器(MAC)并行處理的能力;(3)ADSP-2181是為16位算法操作優(yōu)化的,在需要精度擴展的情況下,運算量將以數量級的速度急劇增加。
基于以上質量和速度要求的分析,我們選用了適合DSP乘累加指令的多相結構濾波器組實現方式,且采用基于MAC結構的精度擴展方法,較好地解決了編碼質量和DSP速度之間的矛盾。另外,對抽樣數據的輸入方式、心理聲學模型、比例因子編碼都進行了適于ADSP-2181的改進,減少了運算量,保證了實時性。
3 算法的軟件設計
軟件設計是MPEG聲音編碼的單片DSP實現的核心,編碼質量和速度的要求都需要通過精心設計DSP軟件才能實現。
?。?)基于MAC結構的精度擴展 MPEG聲音編碼的分析濾波器組可以有許多種實現方式,多相結構是MPEG標準推薦的一種,其數學表示為
(1)
?。?)
分析表明,對Yk進行雙字擴展可將截尾效應帶來的噪聲降低33倍。但是,考慮到ADSP-2181只支持16bit的乘累加運算,需要對式(1)進行轉化,即
?。?) Yk=HYk+2-16LYk
(4)
這樣,就可利用DSP的乘累加器結構,運算量只增加約1倍,存儲量只增加64個字。
?。?)輸入數據的組織 輸入數據的組織不但要考慮方便地從數模轉換器取得聲音原始數據,還要考慮輸入數據在片內數據RAM的存儲適合作為多相濾波器組和聲學模型的FFT運算的輸入。多相濾波器組每次移入32個新的聲音數據,移出32個舊的樣值,操作如下:
Xi=Xi-32,i=511,510,…,32
Xi=next-input-audio-sample,i=31,30,…,0
然而ADSP-2181并不適于實現數據的移動,每個賦值運算需要兩個指令才能完成,每次分析濾波操作需要1024個指令周期。如果利用ADSP- 2181的多通道自動緩沖串口及間接尋址能力,適當地組織輸入聲音數據,就可利用滑動窗的方法實現數據的移入和移出,如圖2所示。
圖2 多相濾波的滑動窗技術
為了保證幀邊界處理的連續(xù)性,輸入數據緩存應該設計成圓緩沖的形式,其長度應能存儲兩幀聲音輸入數據。當DSP在處理一幀數據時,輸入數據可以緩沖到另一幀。這樣,數據移動的開銷就節(jié)約了。同時,輸入數據的組織還要利于聲學模型的FFT運算,FFT需要利用ADSP-2181的地址反轉尋址模式。由于 FFT計算和輸入數據的緩存是同時進行的,所以FFT計算的指針需要地址反轉,而輸入緩沖的指針卻不能地址反轉,否則會導致輸入聲音數據排列混亂。 ADSP-2181提供這種能力,它的第一地址指針組I0,I1,I2,I3有地址反轉能力,而第二地址指針組I4,I5,I6,I7卻不受地址反轉模式的影響。所以從第二地址指針組中選擇指針進行輸入緩沖,從第一地址指針組中選擇指針進行FFT計算。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 基于DSP的矢量控制系統(tǒng)的分析與實現 29次下載
- 基于DSP的三軸轉臺控制系統(tǒng)設計與實現 9次下載
- DSP技術在計算機工程中的應用詳細資料說明 6次下載
- 基于人耳聽覺特性的子帶聲音編碼算法的單片DSP實現 0次下載
- 基于DSP的MPEG聲音編碼的設計方案解析 0次下載
- 基于DSP設計MPEG-4無線視頻產品的案例分析 0次下載
- 多DSP的MPEG-4系統(tǒng)設計方案 0次下載
- MPEG-4視頻編解碼實現方案解析 1次下載
- 基于MPEG-4的視頻DCT編碼器的實現 59次下載
- 基于DSP的聲音采集系統(tǒng)硬件設計
- MPEG-4 ASP視頻編碼器的軟件優(yōu)化設計
- 基于ARM的MPEG 4視頻編碼器
- 基于MPEG-4的在線直播系統(tǒng)設計與實現
- 基于Blackfin533的MPEG-4解碼系統(tǒng)實現
- MPEG4-SP在DSP上的優(yōu)化分析
- 基于VFW軟件開發(fā)包實現聲吶圖像壓縮存儲系統(tǒng)的應用方案 3187次閱讀
- 基于MPEG-2編碼芯片SAA6752實現應用系統(tǒng)的設計 2373次閱讀
- 采用數字信號處理器實現MPEG-4視頻編碼卡的設計 1759次閱讀
- 基于PXA27X微處理器開發(fā)平臺實現視頻編碼的功能應用 1558次閱讀
- 利用DSP芯片實現MPEG-4視頻編碼的優(yōu)化設計 2120次閱讀
- 用光電編碼器和單片機實現高精度恒速泵系統(tǒng)的設計 2021次閱讀
- 如何采用單片機實現VD5026編碼器的工作過程 1960次閱讀
- 以DSP和FPGA協(xié)同技術設計實現的高性能視頻編碼器視頻采集設計 719次閱讀
- mpeg4是mp4嗎_mpeg和mp4有什么區(qū)別 8.1w次閱讀
- 基于ADPCM的數字語音存儲與回放系統(tǒng)設計方案 4610次閱讀
- 基于DSP的智能電源系統(tǒng)設計 5347次閱讀
- 基于DSP的語音識別系統(tǒng)的實現及分析 9704次閱讀
- 基于DSP的H.324終端實現 889次閱讀
- 基于DSP CCS2.2實現指紋識別預處理系統(tǒng) 1956次閱讀
- 國際視頻編碼標準mpeg簡述及AVS視頻關鍵技術 3510次閱讀
下載排行
本周
- 1新概念模擬電路第四冊信號處理電路電子書免費下載
- 10.69 MB | 50次下載 | 免費
- 2SL6341B USB3.2 Gen1X1 接口的的4口HUB
- 2.94 MB | 5次下載 | 免費
- 3FT-7800R對講機維修手冊附原理圖
- 3.35 MB | 2次下載 | 免費
- 4和芯潤德USB3.0HUB芯片SL6341設計資料
- 2.58 MB | 2次下載 | 免費
- 5TPS80032原理圖核對表
- 74.95KB | 2次下載 | 免費
- 6使用CR6850C設計并制作12V5A開關電源
- 1.53 MB | 2次下載 | 2 積分
- 7設計院eplan 500多頁項目圖紙
- 21.43 MB | 2次下載 | 1 積分
- 82.1 MHz類放大器電感選擇指南
- 598.3KB | 1次下載 | 免費
本月
- 1新概念模擬電路第四冊信號處理電路電子書免費下載
- 10.69 MB | 50次下載 | 免費
- 2SW6308V原理圖設計指南
- 0.75 MB | 14次下載 | 1 積分
- 3SW6308V三口多協(xié)議升降壓移動電源SOC中文手冊
- 1.61 MB | 14次下載 | 1 積分
- 4純電動汽?的主要部件及?作原理
- 5.76 MB | 12次下載 | 5 積分
- 5800VA純正弦波逆變器的參考設計
- 2.96MB | 12次下載 | 免費
- 6GP328和GP88S對講機的維修實列資料合集免費下載
- 0.03 MB | 10次下載 | 10 積分
- 7SW6308V寄存器手冊
- 1.08 MB | 10次下載 | 1 積分
- 8IP5385_DEMO開發(fā)資料
- 1.96 MB | 8次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935115次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191364次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183329次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73805次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65985次下載 | 10 積分
評論
查看更多