国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于i.MX27的網(wǎng)絡(luò)音視頻通信的實現(xiàn)

發(fā)布時間:2009-9-23 14:28    發(fā)布者:賈延安
關(guān)鍵詞: 視頻 , 通信 , 網(wǎng)絡(luò)
作者:缐曉林 游向東 潘力 北京郵電大學信息與通信工程學院    2009-09-08  來源:電子產(chǎn)品世界

  前言

  隨著因特網(wǎng)的發(fā)展成熟、用戶需求的增長以及宏觀環(huán)境變暖等條件的刺激,基于網(wǎng)絡(luò)的音視頻通信行業(yè)迅速發(fā)展起來。本文介紹基于Freescale公司i.MX27硬件平臺,基于SIP(初始會話協(xié)議)協(xié)議的網(wǎng)絡(luò)視傳機的設(shè)計與實現(xiàn)。

  視傳機的軟硬件技術(shù)基礎(chǔ)

  i.MX27

  將視頻編解碼功能嵌入到多媒體應(yīng)用處理器中已經(jīng)成為一個趨勢。Freescale DragonBall家族最新成員i.MX27多媒體應(yīng)用處理器,片內(nèi)集成H.264/MPEG4全雙工硬件編解碼視頻處理單元,是嵌入式多媒體應(yīng)用處理器的一顆新星,可廣泛應(yīng)用于多種產(chǎn)品中。i.MX27處理器內(nèi)部的硬件編解碼模塊性能強勁,可以達到H.264/MPEG4編解碼D1分辨率:720×576@25fps;720×480@30fps;全雙工編解碼同時進行可以達到VGA分辨率:640×480@30fps。

  SIP協(xié)議

  SIP是由IETF(國際互聯(lián)網(wǎng)標準制定組織)制定的面向 Internet 會議和電話的信令協(xié)議。SIP是一個應(yīng)用層的協(xié)議,可以建立,修改或者中止多媒體會話或者呼叫。它是一個基于ASCII的端到端的協(xié)議,它實際上是在因特網(wǎng)上提供“約會”服務(wù)。用來實現(xiàn)VoIP的開放協(xié)議,最常用的有三種,SIP、MGCP(Media Gateway Control Protocol)和H.323。

  SIP協(xié)議是專門為IP 電話,尤其是結(jié)合Internet設(shè)計的協(xié)議,同傳統(tǒng)的H.323協(xié)議相比,SIP 擁有明顯的優(yōu)越性:優(yōu)異的可擴展性,大大提高了系統(tǒng)的處理能力;與 Internet 緊密結(jié)合,使通訊更加輕松便捷的;卓越的開放性,不僅能夠?qū)κ謾C、 PDA 等移動設(shè)備提供良好的支持,對于在線即時交流、語音和視頻數(shù)據(jù)傳輸?shù)榷嗝襟w應(yīng)用也能夠很好地完成。

  SIP協(xié)議支持5方面的能力:用戶定位、用戶可用性、用戶能力、會話建立、會話管理。SIP協(xié)議本身不提供業(yè)務(wù),但是它提供業(yè)務(wù)支持的基礎(chǔ)。SIP協(xié)議本身也不提供會議控制,但是SIP協(xié)議可以與任何一個會議控制的協(xié)議綁定。

  Linphone

  Linphone是基于WEB的IP電話工具,運行于Linux和Windows Xp下。通過Linphone可以在互聯(lián)網(wǎng)上和其他人自由地進行聲音、視頻通信,也可以進行及時文本信息傳送。Linphone是遵從SIP協(xié)議開發(fā)的,它需要和支持SIP協(xié)議的電話或者代理服務(wù)器進行相互操作。如果把基于Linphone開發(fā)的VoIP設(shè)備通過PSTN帳號注冊到電信服務(wù)器上,就可以通過它和普通電話進行通話了。但是這些通話不是免費的,因為PSTN是收費服務(wù)。Linphone是開源免費軟件,可以自由下載和重新發(fā)布。

  MiniGUI

  MiniGUI是面向?qū)崟r嵌入式系統(tǒng)的輕量級圖形用戶界面支持系統(tǒng)。目前,MiniGUI已成為跨操作系統(tǒng)的圖形用戶界面支持系統(tǒng),可在Linux/uClinux、eCos、uC/OS-II、VxWorks等操作系統(tǒng)上運行。

  MiniGUI為實時嵌入式操作系統(tǒng)提供了完善的圖形及圖形用戶界面支持。可移植性設(shè)計使得它不論在哪個硬件平臺、哪種操作系統(tǒng)上運行,均能為上層應(yīng)用程序提供一致的應(yīng)用程序編程接口(API)。MiniGUI的技術(shù)優(yōu)勢:輕型、占用資源少,高性能、高可靠性,可配置,可伸縮性強,跨操作系統(tǒng)支持等。

  視傳機的實現(xiàn)

  視傳機的最主要功能包括:通過IP或者向服務(wù)器注冊的ID號呼叫另一臺接在網(wǎng)絡(luò)上的設(shè)備,進行視頻流實時雙向收發(fā)(1幀-25幀/s),最高分辨率可達640×480(廣播級圖像質(zhì)量/D1),可設(shè)置音頻流格式,G.711/GSM/SPEEX,此功能適用于高網(wǎng)絡(luò)帶寬的應(yīng)用環(huán)境。另外視傳機還可以實現(xiàn)電影播放,音視頻單向傳輸(遠程監(jiān)控),音視頻錄制播放,圖片單雙向收發(fā),音視頻郵件收發(fā)等功能。

  視傳機實現(xiàn)這些功能基本原理就是用MiniGUI制作圖形界面進行人機交互[1],用戶通過鍵盤或者遙控器進行指令輸入,MiniGUI接收用戶指令,并傳給操作系統(tǒng)(這里我們使用Linux 2.6.19),操作系統(tǒng)根據(jù)指令的不同進行不同的操作,例如若用戶想進行視頻呼叫,操作系統(tǒng)就將指令發(fā)給Linphone,Linphone就在SIP協(xié)議的基礎(chǔ)上發(fā)起視頻呼叫,根據(jù)對方不同的狀態(tài)給出不同的響應(yīng),對方不在線、對方忙、對方正常應(yīng)答等,在正常應(yīng)答的情況下雙方協(xié)商音頻視頻通信編解碼方式,建立呼叫,進行音視頻通信[2],然后任意一方掛機,退出,完成一次通信,期間還可以進行音視頻錄制等操作。再如若用戶想進行電影播放,則操作系統(tǒng)會調(diào)出播放程序,播放用戶指定的電影文件。

  視頻流的流程如下:由攝像頭(支持自帶插針式和TV輸出兩種)采集圖像數(shù)據(jù),交給操作系統(tǒng)[3],操作系統(tǒng)根據(jù)用戶需要,將視頻數(shù)據(jù)進行本地顯示、編碼錄制或者發(fā)送到對端,對端收到視頻數(shù)據(jù)送入VPU單元進行解碼,然后顯示或者錄制等。通話過程中音頻流的流程為:通過mic采集音頻數(shù)據(jù),交給操作系統(tǒng),操作系統(tǒng)將數(shù)據(jù)送給Linphone,Linphone進行一定格式的編碼[4],然后發(fā)送到對端,對端再進行相應(yīng)的解碼,再將數(shù)據(jù)輸出到音箱或者耳機。

  視傳機主要軟件Linphone的移植

  Linphone有很多個版本,可以通過www.linphone.org免費下載。我們這里使用帶視頻功能的linphone1.6.0版本,要將這個Linphone使用在開發(fā)板上,需要做3個方面的工作:添加H264硬件視頻編解碼器(使用i.MX27的VPU單元進行視頻編解碼),修改程序使之與操作系統(tǒng)和其他應(yīng)用程序進行通信,最后交叉編譯Linphone至開發(fā)板。

  Linphone功能結(jié)構(gòu)

  Linphone1.6.0版本的功能結(jié)構(gòu)如圖1。



  console包括了整個終端界面部分,將界面操作和命令行輸入交由下層處理。

  coreapi包含Linphone大部分核心接口函數(shù),如讀配置文件進行程序初始化、呼叫的建立和結(jié)束、對SDP消息的處理等。

  osip2是一個短小簡潔的sip協(xié)議棧,專注于sip底層解析。

  exosip是osip2的一個擴展協(xié)議集,它部分封裝了osip2協(xié)議棧,使得它更容易被使用。

  mediastreamer模塊負責語音及鈴音等的處理及傳輸,視頻的編解碼(調(diào)用ffmpeg的庫)、聲卡的選擇等。

  ortp將音視頻打包為rtp包發(fā)送至指定端口。

  speex是一種音頻解碼庫。

  添加H264硬件視頻編解碼器

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

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

  VPU的內(nèi)核驅(qū)動主要包括以下功能:模塊初始化、器件初始化、中斷服務(wù)策略、文件操作策略、器件關(guān)閉、編解碼庫、系統(tǒng)IO操作等。

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



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

  結(jié)語

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



  參考文獻:

  [1] MiniGUI Tech White Paper[R/OL]. http://www.minigui.org/docs.shtml

  [2] RTP payload format for H.264/SVC scalable video coding[J]. 浙江大學學報A(英文版)

  [3] Video for Linux Two API Specification[R/OL]. http://www.linuxtv.org/

  [4] The Speex Codec Manual[R/OL]. http://www.speex.org/

  [5] i.MX27數(shù)據(jù)手冊[R/OL]. http://www.freescale.com
本文地址:http://www.qingdxww.cn/thread-4405-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責;文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 為何選擇集成電平轉(zhuǎn)換?
  • 無線充電基礎(chǔ)知識及應(yīng)用培訓教程2
  • 無線充電基礎(chǔ)知識及應(yīng)用培訓教程3
  • PIC18-Q71系列MCU概述
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)在線工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 午夜精品久久久久 | 亚洲国产成人私人影院 | 精东影业果冻传媒 | 清纯唯美综合网 | 激情啪啪精品一区二区 | 久久人| 国产爆操 | 视频一区二区欧美日韩在线 | 日本在线亚洲 | 天降奇兵国语高清在线观看 | 国产99欧美精品久久精品久久 | 国产精品国产亚洲精品看不卡 | 国产亚洲精品自在久久77 | 三级毛片免费看 | 一级欧美一级日韩片 | 伊人网色 | 精品国产国语对白主播野战 | 国产精品免费看久久久 | 四虎影视免费观看 | 99re这里只有精品在线 | 欧美极品在线视频 | 超级极品白嫩美女在线 | 日本在线观看网址 | 色视频网站免费 | 精品手机在线视频 | 中国一级做a爰片久久毛片 中国一级特黄毛片 | 欧美日本一区二区 | 性视频福利在线看 | 日韩一区二区精品久久高清 | 国产手机精品视频 | 亚洲卡2卡3卡4卡精品 | 伊人青青青 | 欧美男女性生活视频 | 四虎网址在线观看 | 99自拍视频在线观看 | 一区二区在线播放视频 | 国产91久久精品一区二区 | 青青草原社区 | 成人深夜福利在线播放不卡 | 亚洲综合色婷婷 | 午夜视频免费在线播放 |