日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于WinCE的在線流媒體播放器的軟件設(shè)計

摘要:互聯(lián)網(wǎng)的迅猛發(fā)展和普及為流媒體業(yè)務(wù)發(fā)展提供了強(qiáng)大的市場動力,流媒體業(yè)務(wù)正變得日益流行?;诖嗽O(shè)計了一個基于WinCE 6.O操作系統(tǒng)的在線流媒體播放軟件,運(yùn)用Visual Studio 2005開發(fā)工具的DirectShow技術(shù)來開發(fā)在線流媒體播放程序的具體方法和程序代碼。闡述了整個流媒體播放程序的實現(xiàn)流程,真正實現(xiàn)了在線流媒體播放。
關(guān)鍵詞:DirectShow;WinCE 6.0;流媒體

0 引言
    多媒體終端是一種以播放多媒體文件為其主要功能的消費(fèi)類電子產(chǎn)品,其中的多媒體文件包括音頻、視頻、FLASH動畫、圖片等。而且,在此基礎(chǔ)之上,多媒體終端可以擴(kuò)展諸如視頻錄制、攝像/照相、數(shù)碼相冊、收音機(jī)、電子書、游戲、上網(wǎng)等豐富的功能,成為一種個人信息和娛樂的便攜式設(shè)備。便攜式媒體播放器(Portable Media Player,PMP)、智能手機(jī)(Smart Phone)、個人數(shù)字助理(PDA)等都是典型的多媒體終端設(shè)備。本文主要論述了如何在基于WinCE操作系統(tǒng)的智能設(shè)備上利用DirectShow技術(shù)實現(xiàn)流媒體的播放,并給出了測試結(jié)果。

1 DirectShow簡介
    DirectShow是DirectX開發(fā)包中關(guān)于流媒體處理的一個開發(fā)包,這個開發(fā)包可以進(jìn)行音頻和視頻的捕捉,使用它可以開發(fā)DVD應(yīng)用程序和數(shù)字TV應(yīng)用程序。DirectShow支持的媒體文件主要有WMA、MOV、MPG、AVI、MP3、WAV、WMV等,無論是讀取媒體文件還是將捕捉的數(shù)據(jù)寫入到媒體文件,DirectShow開發(fā)包都能提供很好的技術(shù)支持。
    DirectShow技術(shù)利用標(biāo)準(zhǔn)組件來處理流媒體數(shù)據(jù),這些組件稱為過濾器。過濾器帶有輸入和輸出針角,或二者兼而有之。在DirectShow技術(shù)中處于最核心位置的就是作為“過濾器”的可插入標(biāo)準(zhǔn)組件,它是執(zhí)行特定任務(wù)的COM對象。過濾器又分為源過濾器(souroe filter)、變換過濾器(Trans form filter)和表現(xiàn)過濾器(Render filter)等。過濾器通過向文件讀寫、修改數(shù)據(jù)和顯示數(shù)據(jù)到輸出設(shè)備上來操作流媒
體。為了完成整個任務(wù)。必須要將所有過濾器Filter連接起來,這3種過濾器組成了過濾器圖表結(jié)構(gòu),如圖1所示。

2 DirectShow技術(shù)開發(fā)準(zhǔn)備
    DirectShow組件在“C:\WINDOWS\system32”目錄下的Quartz.dll動態(tài)庫中,要使C#代碼引用COM對象和接口,必須將COM類型庫轉(zhuǎn)換為.NET框架元數(shù)據(jù),從而有效地創(chuàng)建一個可以從任何托管語言調(diào)用的托管包裝。在轉(zhuǎn)換過程中需要使用FrameWork SDK自帶的TlbImp命令工具,該命令工具在“E:\Program Files\Microsoft Visual Studio 8\SDK\v2.O\Bin\TlbImp.exe”目錄下(取決于Visual Studio 2005的安裝路徑)。該命令的使用方法為:TlbImp C:\WINDOWS\system32\quartz.dll out:QuarteTypeLib.dll在DOS命令下執(zhí)行轉(zhuǎn)換成功。

[!--empirenews.page--]

3 多媒體播放器程序
    按以下步驟創(chuàng)建一個空的項目:
    (1)啟動Visual Studio 2005,然后單擊菜單欄“新建”|“項目”。
    (2)在項目類型里選擇“Visual C#”|“智能設(shè)備”,在模板中選擇“設(shè)備應(yīng)用程序”,鍵入新項目的名稱(最好為DirectShow),然后單擊“確定”。
    (3)在屬性窗口中將窗體名稱更改為FrmPlayMedia,將窗體文本更改為“流媒體播放器”。
    按照以下步驟在項目中添加一個對DirectShow的引用:
    (1)在Visual Stuidio 2005開發(fā)環(huán)境中,選擇菜單“項目”|“添加引用”命令,彈出“添加引用”對話框。
    (2)選擇“瀏覽”選項卡,通過瀏覽找到引用Quartz TypeLib.dll所在的位置,并引用到程序中。
    (3)引入using QuartzTypeLib后,在程序中就可以開發(fā)相關(guān)多媒體程序了。
    添加Windows窗體控件:
    (1)在View(視圖)菜單中,單擊Designer(設(shè)計器),或者單擊Solution Explorer(解決方案資源管理器)中的View Designer(視圖設(shè)計器)按鈕,切換到窗體設(shè)計器。
    (2)在窗體上添加6個Button控件,主要用來操作播放的媒體文件。
    (3)在窗體上添加一個TrackBar控件,用來顯示媒體文件播放的進(jìn)度。
    (4)在窗體上添加一個Timer控件,用來計算媒體當(dāng)前的進(jìn)度。
    (5)調(diào)整控件在窗體中的排列方式,使之符合需要而且方便用戶使用,如圖2所示。

4 實驗結(jié)果
    以上程序編譯后,即可下載到開發(fā)板上的WinCE6.0系統(tǒng)內(nèi),就可以順利地播放在線視頻。圖3是播放效果截圖,流媒體文件地址是mms://stream-mms.daai.tv/wmtencoder/100k.wmv。

5 結(jié)束語
    現(xiàn)代多媒體技術(shù)的終端智能化和嵌入化發(fā)展趨勢,促使嵌入式系統(tǒng)產(chǎn)品中對多媒體的應(yīng)用越來越多,特別是要求對各種多媒體文件的播放支持顯得越來越重要。通過對本程序的研究,可以比較清晰的了解WinCE下基于DireetShow多媒體編程開發(fā)的方法與步驟,以便為更復(fù)雜的開發(fā)應(yīng)用奠定基礎(chǔ)。
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉