日韩欧美国产一区二区三区_五月天欧美精品_国产精品一区不卡_欧美精品乱码久久久久久

內容字號:默認大號超大號

段落設置:段首縮進取消段首縮進

字體設置:切換到微軟雅黑切換到宋體






基于IPP的嵌入式音頻解碼器設計與優化(2)

時間:2009-08-20 來源:微計算機信息 作者:陳一凡 點擊:

    除解碼和播放MP3程序外,還需用戶控制部分的程序。MP3播放要求實時性很高,所以不能跟用戶控制程序放在一起,需要為它創建一個線程。通過Linux下的Pthread線程,它可以共享內存的數據,這使得線程間通信變得方便。MP3播放的代碼就可以放到一個線程里面去,通過共享內存數據由主線程來處理用戶操作、啟動、暫停和結束播放線程序。引入了多線程操作后,使播放器用戶界面的各操作(如按紐按下、鼠標點擊等)不必等待MP3解碼完成而不能得到及時響應。

5.3 MP3音頻解碼關鍵算法對IPP關鍵算法的API移植封裝接口
    鑒于篇幅關系,不對每一個API移植和具體操作都進行詳細闡述,如上所述,IPP最底層的音頻解碼函數有ippsUnpackFrameHeader_MP3…ippsSynthPQMF_MP3_32s16s等,我們先對上述函數進行第一層移植,形成一批引用更為方便、操作更為簡單的API,把這一層的移植操作全都完成在一個MyAudioApi.cpp文件里面,添加到用Qt做圖形界面GUI的項目中一起編譯。

    這使得最上層的QT圖形界面應用程序的各個成員函數可以非常方便地調用利用IPP生成的音頻播放各種操作的函數接口。這樣仍然可以利用IPP的高效算法進行解碼優化而且屏蔽了底層IPP API的復雜性。還為以后的二次開發提供便利。自己定義的音頻解碼各個函數原型如下:

  void mp3open(char filename);/*打開MP3文件并創建解碼線程*/

  void mp3play(void); /*設置ispause共享變量為假,重新進入播放線程循環體*/

  void mp3pause(void);/*設置ispause共享變量為真*/

  void mp3stop(void); /*設置done共享變量為真,等待播放線程結束*

    需要說明的是上述函數完成播放器用戶界面中啟動音頻播放、控制暫停和結束播放功能,通過多線程之間共享內存數據的方式進行線程間的通信,從而在主線程中控制播放線程的暫停和停止。

  void *MP3Start(void *arg) /*針對MP3播放線程主函數進行解釋和流程分析*/
{ InitMP3Decoder(&D ecoderState,&bs);/*初始化解碼器*/ while(!done)/*停止鍵或者解碼未完成之前循環播放解碼*/

  { if(!ispause)/*通過判斷線程之間的共享變量ispause判斷時候有暫停鍵按下*/

  switch( DecodeMP3Frame(&bs,pcm,&DecoderState) )

   {/*根據解碼函數返回的狀態選擇下一步操作*/

  case MP3_FRAME_COMPLETE:

  /*緩沖區中已有足夠數據來解碼一幀流數據*/

   …}}

  /*關閉 I/O 音頻設備,此MP3文件播放結束*/

  }

6 結束語
    IPP能夠實現底層的交差平臺的軟件開發,提供高集成的數據通訊,單信號處理以及多媒體功能等,Intel IPP并且能夠幫助優化電力消耗,達到最佳的CPU執行效率。其嵌入式的移植應用更是為實現手持設備上的低功耗,高代碼執行效率提供了一種可行的軟件優化方案。


(中國集群通信網 | 責任編輯:陳曉亮)

中國集群通信網,國內首家集群通信專業網站。

Copyright © PttCn.Net, All Rights Reserved.   

聯系我們 聯系我們 中國集群通信網 對講機學堂 對講機世界

主站蜘蛛池模板: 视频一区不卡| 激情视频综合网| 国产九九精品视频| 国产精品av一区| 人妻无码视频一区二区三区| 欧美日韩国产91| 日韩欧美在线免费观看视频| 日本在线视频不卡| 国产精品入口福利| 久久久久久亚洲精品| 狠狠色综合欧美激情| 欧美高清视频一区二区三区在线观看 | 欧美在线视频导航| 国产成人精品日本亚洲11 | 婷婷五月色综合| 久久精品在线播放| 国产精品91在线观看| 久久精品一本久久99精品| 日韩精品―中文字幕| 国产精品极品尤物在线观看| 亚洲国产精品女人| 久久久91精品国产| 久久精品国产欧美激情| 欧美二区三区在线| 日韩精品福利视频| 日本久久久久久久| 丝袜亚洲欧美日韩综合| 在线不卡日本| 国产不卡av在线免费观看| 国产精品久久久久久久久久久久 | 99在线国产| 国产毛片久久久久久国产毛片| 久久久无码中文字幕久...| 日韩中文字幕在线看| 99久久精品免费看国产四区| 国产精品日韩三级| 国产伦精品免费视频| 国产偷久久久精品专区| 国产在线精品一区二区中文v| 欧美激情久久久久久| 欧美婷婷久久|