999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MP3音頻解碼優化算法

2013-09-25 14:12:54田學民張曉境
電子設計工程 2013年4期

田學民,張曉境

(河北工業大學 信息工程學院,天津 300401)

在MP3播放器的設計時,提高音質的一個關鍵因素還在與MP3解碼技術,因為播放器必須先通過解碼模塊進行MP3解碼,所以解碼技術的研究是MP3研究的一個關鍵環節。目前國內的基于FPGA的MP3硬件解碼的研究還不是很多,而且基本都是只針對解碼系統中的幾個關鍵環節進行硬件加速的SOC設計,而對于整個MP3解碼系統的硬件實現就更少了。因此,本文的重點就是研究MP3解碼算法。

1 MP3解碼流程

在進行MP3解碼時,輸入的經過壓縮的比特流首先要進行碼流解碼。檢測數據流中的同步字來確定一幀數據的開始,提取幀頭信息,從而得到相應的解碼參數,同時分離邊信息和主數據,通過對邊信息數據解碼可得到哈夫曼解碼信息和反量化信息,主數據就可以根據哈夫曼解碼信息解碼出量化之后的頻率線數據[1]。提取出的頻率線信息經過反量化、重排序、聯合立體聲處理、混疊重建、反離散余弦變換(IMDCT)、頻率反轉、合成多相濾波器組處理后就可以得到原始的PCM音頻信號。

1.1 Huffman解碼

編碼后的MP3數據以幀為單位,每一幀又分為兩個粒度。這兩個粒度在解碼時相對獨立,從每一粒度中可以解碼出576個PCM數據,2個粒度一共可以解出1 152個PCM數據[2]。MP3音頻幀的主數據包括比例因子和Huffman碼字。由邊帶信息參量可計算出單個聲道內比例因子的總長度(part2_length),用參量 part2_3_length減去此值便可得到Huffman碼字的總長度。Huffman解碼還原出的576條頻率線從低頻到高頻分為3個區域:大值區、小值區和零值區,如圖1所示。

圖1 Huffman碼字結構圖Fig.1 Chart of Huffman code

只有大值區和小值區的頻率線會出現在MP3碼流中,零值區的頻率線的值全為0,因此不用編碼也不必出現在碼流中,解碼時只需對零值區的頻率線補0,直至得到576個解碼值。Huffman解碼得到的頻域值按比例因子頻帶從低到高排列[3]。

1.2 反量化

反量化過程是基于Huffman解碼得到的頻率線進行的。記Huffman解碼結果為is,反量化計算結果為xr,其計算公式如下所示[4]。

長窗中的數據用下面的公式進行反量化:

短窗中的數據的反量化公式為:

在反量化公式中,頻譜值is,首先提高到原來的4/3次冪,補償編碼時的幅度衰減。之后再乘以符號位sign(is)。global_gain變量是每聲道中的全局量化步長?!?10”是一個系統常數,保證合適的量化步長,同時也保證編碼過程中不會出現全“1”而擾亂同步字。在編碼器中比例因子采用對數量化的形式,步長為2或,用 scalefac_scale表示,若 scalefac_scale=O 則 scalefac_multiplier=0.5,否則 scalefae_multiplier=1。preflg和pretab只在長窗中有效。preflag是高頻預加重標志,“1”表示采用高頻頇加重,pretab[sfb]的作用是查表得出每個頻率子帶的預加重值。scalefacse_l和scalefac_s對應縮放因子解碼中所得出的長短窗的縮放因子。當運用短窗時,subblock_gain變量對應子帶中更細的量化。變量win_switch_flag和block type確定是否重排序。

1.3 重排列

在MP3編碼算法的MDCT步驟中,長塊類型的頻域值按頻率由低到高排列;短塊類型的頻域值是按比例因子頻帶、頻率、窗的順序排列的。但是為了提高Huffman編碼效率,短塊類型的數據會重新排列,順序是比例因子頻帶、窗、頻率[5]。重排序不會改變頻率線的頻帶歸屬,即該頻帶內的頻域值重排后仍屬于原來的比例因子頻帶。而且,該頻帶的第一條頻率線在重排后仍是第一條頻率線,最后一條頻率線在重排后仍是該頻帶的最后一條頻率線。

1.4 立體聲處理

采用MS立體聲模式時,碼流中傳送的是中間/旁邊(middle/side)聲道值M/S,而不是左/右聲道L/R。當左右聲道值L/R很接近時,如編碼公式(3)所示,計算得到的M值相當于均值,而S值幾乎為0。因此當2個聲道高度相關時,采用這種立體聲編碼模式可以減少編碼后的比特數[6]。

編碼公式如下所示,

解碼時,原始的左右聲道值UR的重建公式為:

在MS立體聲處理算法進行硬件實現時,把式(4)進行如下變換:

當立體聲處理進行到左右聲道的零值區重疊處時,此后的左右聲道頻率線值全部為0,可以無需繼續計算直接得到結果0,以減少數據計算量。

1.5 混疊重建

純長塊類型數據和混合塊類型的長塊部分需要進行混疊重建。對于混合塊類型,前兩個子帶屬于長塊,因此只需做一組蝶形運算。

對于純長塊類型的32個子帶,有31個子帶間隔,需要進行三十一組運算,即上個子帶的后8個頻域值和下個子帶的前8個頻域值進行獨立的8次蝶形運算。每次蝶形計算的輸入記為 xu、xd,輸出記為 xu′、xd′,計算公式如式(6)所示,其中的cs和ca參數由MP3音頻標準給出[7]。

屬于零值區的子帶無需進行蝶形計算即可直接給出0值結果,因此混疊重建算法在硬件實現時,仍可以利用頻率線的零值區特性來減少數據運算量。

1.6 IMDCT

IMDCT的變換公式為:

IMDCT是MDCT的反變換,是MP3解碼過程中的一個非常重要和運算量極大的過程,它們在實際的硬件中的運算量都非常的大,所以要對公式來進行變形,以尋求一些快速算法。

2 改進的遞推算法

在硬件實現中,我們選擇遞歸算法作為硬件實現IMDCT的方法。雖然遞歸算法簡單易實現,但它的運算量還是比較大,所以可以采用改進的遞推算法以減少運算量[8]。

優化算法的推導:

由三角函數的對稱性可知:y(n)=-y(N-1-N),n=0,1,…,M-1

因此,只需計算M點的 y(n),便可求出 x(n)。 這樣便減少了一半的運算量。采用正弦遞歸的方法來計算u(n):

3 結束語

文中分析研究了整個MP3編解碼系統流程,然后對IMDCT選擇了宜于硬件實現的遞歸算法,并給出了基于遞歸算法的優化算法,在減少硬件資源的同時保持了運算速度。通過MATLAB仿真工具驗證,優化算法完全正確。

[1]汪勇,熊前興.MP3文件格式解析[J].計算機應用與軟件,2004(12):126-128.

WANG Yong,XIONG Qian-xing.MP3 file format analysis[J].Computer Application and Software,2004(12):126-128.

[2]劉宇.基于FPGA的MP3播放器的設計與實現[D].沈陽:東北大學,2009.

[3]毛利萍.MP3音頻編解碼運算中IMDCT算法研究及其FPGA實現[D].上海:華東師范大學,2007.

[4]葉曉舟,鄧峰,曾學文,等.基于定點DSP的MP3解碼算法優化與實現[J].計算機工程與應用,2007,43(23):94-96.YE Xiao-zhou,DENG Feng,ZENG Xue-wen,et al.MP3 decoding optimization algorithm and implementation based on the fixed point DSP[J].Computer Engineering and Application,2007,43(23):94-96.

[5]張多利,杜伏慧,杜高明,等.MP3音頻解碼器的硬件設計與FPGA實現[J].中國科技論文在線精品論文,2009,2(18):1879-1883.

ZHANG Duo-li,DU Fu-hui,DU Gao-ming,et al.A case study on hardware architecture and FPGA prototype implementation of MP3 audio decoder[J].Highlights of Sciencepaper Online,2009,2(18):1879-1883.

[6]蘇祖輝.IMDCT在MPEG/Audio-1 LayerⅢ中的遞歸實現[D].合肥:合肥工業大學,2005.

[7]蔣學鑫.MP3實時編解碼系統的研究與開發[D].成都:電子科技大學,2007.

[8]鄧寧,周源華,郭凱.運用遞歸算法實現共同的MDCT和IMDCT結構[J].電聲技術,2009,(2):5-7.

DENG Ning,ZHOU Yuan-hua,GUO Kai.Implementation of common MDCT and IMDCT structure with the recursive algorithm[J].Electroacoustic Technology,2009(2):5-7.

主站蜘蛛池模板: 国产一区二区精品高清在线观看| 青草视频网站在线观看| 欧美日韩一区二区三区在线视频| 国产成人亚洲无码淙合青草| 国产制服丝袜91在线| 喷潮白浆直流在线播放| 欧美在线中文字幕| 免费aa毛片| 日本一区高清| 国产成人一区在线播放| 日本人又色又爽的视频| 九色综合伊人久久富二代| 欧美成人免费午夜全| 玖玖精品视频在线观看| 亚洲国产综合精品一区| 人妻中文久热无码丝袜| 午夜福利无码一区二区| 91外围女在线观看| 国产新AV天堂| 最新加勒比隔壁人妻| 久久精品无码一区二区日韩免费| 国产成人乱无码视频| 狠狠色综合久久狠狠色综合| 久久这里只有精品66| 色噜噜在线观看| 欧美成人影院亚洲综合图| 九九热视频在线免费观看| 欧美日韩另类在线| 一级成人a做片免费| 日韩精品一区二区三区swag| 91精选国产大片| 热九九精品| 欧美精品一二三区| a色毛片免费视频| 一区二区三区毛片无码| 久久a毛片| 在线观看精品自拍视频| 国产成人av一区二区三区| www.91中文字幕| 国产无码制服丝袜| 国产成人精品一区二区秒拍1o| 亚洲日韩国产精品综合在线观看| 国产美女免费| 国产麻豆91网在线看| 成人夜夜嗨| 成年女人a毛片免费视频| 欧美成人午夜在线全部免费| 国产av色站网站| 久久久久人妻一区精品色奶水| 国产人人乐人人爱| 国产乱人视频免费观看| 欧洲日本亚洲中文字幕| 久久五月视频| 好紧太爽了视频免费无码| 亚洲精品不卡午夜精品| 中文字幕一区二区人妻电影| 91九色最新地址| 一级做a爰片久久免费| 成人国产一区二区三区| 亚洲无码精彩视频在线观看 | AV熟女乱| a级毛片免费看| 国外欧美一区另类中文字幕| 蜜桃视频一区二区| 日韩无码白| 国产aaaaa一级毛片| 国产精品林美惠子在线播放| 毛片在线播放a| 久久精品亚洲中文字幕乱码| 国产H片无码不卡在线视频 | 高清国产在线| 中文成人在线视频| 一边摸一边做爽的视频17国产| 亚洲日本韩在线观看| 国产91av在线| 在线免费a视频| 成人在线不卡视频| 日韩大乳视频中文字幕| 久久精品亚洲专区| 一级爱做片免费观看久久 | 四虎在线高清无码| 日韩欧美国产成人|