新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Mobile的手機流媒體實時圖像瀏覽客戶端設計

        基于Mobile的手機流媒體實時圖像瀏覽客戶端設計

        作者: 時間:2011-09-26 來源:網絡 收藏

          1 引言

        本文引用地址:http://www.104case.com/article/150164.htm

          當今社會,僅僅傳輸文字和信息已經不能滿足現代社會發展的需要,音頻和視頻的多媒體信息成為網絡上重要的傳輸內容。同時微軟憑借其強大的研發實力和市場推廣能力,使得Windows 操作系統及其開發工具成為了主流的智能軟件開發平臺。

          2 系統的功能及總體結構

          本文主要闡述的軟件,此軟件是通過軟件仿真實現的一個Windows 系統。要求能夠一邊收取網絡上的大量音視頻數據,將數據解碼,一邊還要進行顯示。因此多媒體系統中的流媒體的功能包括:

          (1) 從網絡上接收數據包,收集傳來的各種數據和指令。

          (2) 對其進行分析、處理,將數據進行解碼以便交給設備進行輸出。

          (3) 將從解碼模塊傳過來的處理后的數據通過播放器進行顯示。

          3 主要模塊的與實現

          本文應用流媒體技術、網絡通信技術了一個智能流媒體傳輸系統框架,并針對組成該系統的重要模塊進行探討和研究。基于RTP/RTCP 協議的流媒體傳輸組件,實現了的網絡數據傳輸、解碼和顯示等功能,為以后開發出有完善功能的應用系統作了鋪墊。

          本系統中的流媒體圖像需要包括如下模塊:網絡接收模塊、解碼模塊、顯示模塊、操作控制模塊,根據平臺的結構和工作原理,系統的工作流程如圖1 所示。

          

          3.1 網絡接收模塊

          本系統中設計了智能手機上的RTP 接收,針對智能手機處理速度的限制,在該模塊中設計了一個緩沖區用于平滑網絡上所接收的數據和智能手機處理速度之間的瓶頸。同時Mobile操作系統支持TCP/IP 協議,因此可以使用TCP/IP 協議進行網絡方面的通信和圖像數據的傳輸。RTP 接收數據流程圖如圖2 所示。

          

          3.2 解碼模塊

          音/ 視頻以大量的數據進行傳輸,可能會造成網絡堵塞。為了減少網絡傳輸量,那么在不會影響音視頻顯示效果的前提下,對數據進行了壓縮和編碼處理,可以大大的減少數據量。因此,在接收到數據以后,對完整的音/ 視頻數據要進行對應的解碼,才能使圖像正確無誤的顯示出來。

          3.3 顯示模塊

          本系統中采用Direct-Show技術來提供多媒體流高質量的捕捉與回放。下面就本系統中終端播放器的具體功能和實現,設計如下:

          3.3.1 建立項目

          使用Visual STudio 2008 的開發環境創建一個新項目,利用智能設備應用程序向導創建一個基于對話框的應用程序, 編譯環境設置為Windows Mobile 6 ProfessiONalSDK,設備選擇CHSWindows Mobile 6 ClassicEmulator 為智能設備的模擬環境。

          3.3.2 新建一個CEric-MediaControl 類,用于封閉媒體文件播放等功能

          CEricMediaControl 類是一個通用的C++ 類,無基類。

          下面就來具體實現CEricMediaControl 類。

          a.為CEricMediaControl 類添加私有變量,用于定義播放媒體文件播放所需的DSHOW接口。

          b.定義媒體播放事件對應的WINDOWS 消息常量WM_GRAPHNOTIFY,定義如下:#define WM_GRAPHNOTIFYWM_USER + 101。

          c.實現CEricMediaControl 類的構造函數和析構函數。在構造函數里,將DSHOW相關的接口初始化為NULL,并初始化COM環境;在析構函數里,釋放DSHOW 接口并釋放COM環境。

          d.為CEricMediaControl 類添加InitDShow和UnInitDShow兩個私有方法。

          e.為CEricMediaControl 類添加4 個共有方法,供外部調用。這4 個方法分別為OpenFile、VideoRun、VideoPause、VideoStop。f. 為類CEricMediaControl類添加7 個共有的方法,用于設置媒體播放屬性以及得到媒體播放器的屬性。這7個方法分別為FitVideoWindow、FullScreen、Get-FullScreenStatus、GetMediaEvent、SetPositions、GetDuration。

          3.3.3 設計媒體播放器的主窗口

          根據媒體播放器上的樣式,對話框上的控件及其屬性設置如表1 所示。

          

          至此,媒體播放器就編寫完成了,編譯并部署到模擬器中,即可實現流媒體實時圖像的瀏覽了,同時可以作為本地媒體播放器使用,通過“打開”按鈕選擇播放本地媒體文件。

          4 結語

          隨著手機市場的不斷增長和3G 網絡業務的快速發展,針對智能手機音/ 視頻圖像的傳輸,本文通過流媒體技術以及網絡編程的研究,實現了在Mobile 操作系統下實時圖像的傳輸及瀏覽。這個實時流媒體傳輸系統經過進一步完善后,將可以推廣到更多場合中,得到更多的應用,例如:視頻會議、遠程教學等,具有實際應用價值。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 江门市| 富民县| 汉寿县| 贵定县| 大英县| 新安县| 沈阳市| 泾阳县| 肃南| 亳州市| 盐亭县| 高雄县| 墨玉县| 收藏| 延川县| 广西| 深水埗区| 航空| 禄丰县| 万宁市| 丰城市| 乌兰浩特市| 稷山县| 宽城| 固始县| 福安市| 太原市| 龙门县| 方山县| 阿拉尔市| 进贤县| 宜川县| 定州市| 双流县| 佛教| 东台市| 成都市| 璧山县| 汉阴县| 永宁县| 南开区|