?解碼模塊 - 基于Mobile的手機流媒體實時圖像瀏覽客戶端設計
音/ 視頻以大量的數據進行傳輸,可能會造成網絡堵塞。為了減少網絡傳輸量,那么在不會影響音視頻顯示效果的前提下,對數據進行了壓縮和編碼處理,可以大大的減少數據量。因此,在接收到數據以后,對完整的音/ 視頻數據要進行對應的解碼,才能使圖像正確無誤的顯示出來。
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 操作系統下實時圖像的傳輸及瀏覽。這個實時流媒體傳輸系統經過進一步完善后,將可以推廣到更多場合中,得到更多的應用,例如:視頻會議、遠程教學等,具有實際應用價值。
- 第 1 頁:基于Mobile的手機流媒體實時圖像瀏覽客戶端設計
- 第 2 頁:?解碼模塊
本文導航
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%
相關閱讀:
- [電子說] 新知同享 | Mobile 開發輕松跨屏,高效構建 2023-09-08
- [電子說] 顛覆支付市場,打造互聯生活 — 意法半導體STPay-Mobile數字鑰匙解決方案 2023-09-07
- [電子說] 美國通信運營商裁員5000人,中國運營商仍然增長迅速顯然比美國好許多 2023-08-28
- [電子說] Mobileye研究:被低估的Mobileye,重新定義自動駕駛 2023-07-29
- [電子說] 三星成功拿下特斯拉下一代FSD芯片訂單 2023-07-19
- [電子說] Mobileye發布首個純視覺智能車速輔助系統 2023-07-19
- [電子說] Mobileye和特斯拉差距在哪? 2023-07-12
- [電子說] 基于Mobile SDK V5版固件開發大疆無人機手機端遙控器(5) 2023-07-07
( 發表人:葉子 )