亚洲人成免费,国产精品色在线网站,亚洲精品久久久一线二线三线,国产欧美久久久,中文字幕av一区二区三区人,三级国产毛片,美女被麻豆免费网站

 首頁 > 技術 > 技術文摘 > 基于i.MX27的網絡音視頻通信的實現

基于i.MX27的網絡音視頻通信的實現

2009-09-27 00:00:00   作者:   來源:   評論:0 點擊:












  Linphone1.6.0 本身具有視頻編解碼功能,默認具有H263 、mpeg4、mjpeg等編解碼器,我們要仿照這些編解碼器的源碼結構添加H264解碼器,重要的是將編解碼器的軟件編解碼部分替換成i.MX27的 VPU(視頻處理單元)來進行硬件編解碼,因為i.MX27的CPU處理速度有限,遠及不上PC的CPU,而i.MX27的VPU則是專門進行視頻編解碼處理的協處理器,在處理視頻數據的時候是不需要CPU參與。

  代碼的添加過程如下:在向Linphone注冊編解碼器的地方添加H264編解碼器,使得Linphone具備H264編解碼器的功能選項,注冊的內容包括:編解碼器id,一些名稱文本等標識符,編解碼器初始化,視頻數據預處理、處理、后處理,編解碼器銷毀(釋放系統資源)等函數鏈接,編解碼器方法(進行基本視頻編解碼處理之外的操作)等。注冊好編解碼器后,就是如何真正實現編解碼器對視頻流的編解碼處理了,也就是編解碼器的初始化,視頻數據預處理、處理、后處理,編解碼器銷毀等函數的實現。視頻處理的軟件部分主要包括內核空間的驅動和編解碼庫以及用戶空間的應用程序。內核驅動負責系統控制和系統資源的申請和釋放,提供一些IOCTRL接口給用戶空間的應用程序使用調配系統硬件資源;用戶空間的應用程序調用適當的IOCTRL和編解碼庫函數來實現復雜的編解碼系統。

  VPU的內核驅動主要包括以下功能:模塊初始化、器件初始化、中斷服務策略、文件操作策略、器件關閉、編解碼庫、系統IO操作等。


  視頻編解碼的計算和絕大部分視頻流的壓縮/解壓縮都是由i.MX27的硬件VPU單元來完成的,這樣軟件就不需要過多的控制或者時間消耗等來實現一個復雜的編解碼系統。VPU的硬件數據流可以用一個mpeg4格式數據的解碼實現過程展示(見圖2)。



  硬件編解碼速度快、效率高、功耗和熱功耗低,節(jié)省了CPU的資源,實現了良好畫質的傳輸,這一點充分體現了i.MX27芯片在視頻處理方面的優(yōu)勢。
結語

  本文基于linphone、ffmpeg、speex、minigui、linux等開源軟件實現了嵌入式可視終端軟件系統——視傳機樣機,如圖3所示。樣機充分使用已有的開源軟件成果進行開發(fā),實現語音通話,視頻通話,視頻監(jiān)控,媒體文件播放等基本的功能。

電子產品世界

相關閱讀:

分享到: 收藏

專題