DirectShow過濾器組件開發(fā)技術(shù)及其應(yīng)用實(shí)例_第1頁
DirectShow過濾器組件開發(fā)技術(shù)及其應(yīng)用實(shí)例_第2頁
DirectShow過濾器組件開發(fā)技術(shù)及其應(yīng)用實(shí)例_第3頁
DirectShow過濾器組件開發(fā)技術(shù)及其應(yīng)用實(shí)例_第4頁
DirectShow過濾器組件開發(fā)技術(shù)及其應(yīng)用實(shí)例_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、DirectShow過濾器組件開發(fā)技術(shù)及其應(yīng)用實(shí)例南京大學(xué)電子科學(xué)與工程系(210093)盛 健季曉勇摘 要:討論了 DirectShow it組件的開發(fā)技術(shù),給出了網(wǎng)絡(luò)視煩應(yīng)用中的一個過濾器組 件開發(fā)實(shí)例。關(guān)磯詞:DirectShow 過激器 COM 視頻應(yīng)用啊絡(luò)卜Source Filtw文件系統(tǒng)Krndrr FillersTransfonn音頫視頻朿星卡門I各種軟硬件城冠解丹計(jì)I云1 DirectShow 概述DirectShow是Windows平臺下流行的流媒體開發(fā)體 系,可以實(shí)現(xiàn)高質(zhì)星的音視頻采集.編輯、編碼、解碼格 式轉(zhuǎn)検、播放,它解央了網(wǎng)絡(luò)音頻及視頻倍息傳輸中數(shù)據(jù) 量大數(shù)據(jù)源種類多

2、.客戶端軟硬件環(huán)境不確定、視頻音 頻需耍同步導(dǎo)問題因此有著廣泛的應(yīng)用二DirectShow便用模塊化的體系結(jié)溝.域主耍的組件 是過濾器(Fiber): DirectShow把-系列過濾器紐合起來 形成DirectShow應(yīng)用程序。每個過濾器提供種功能如 獲取數(shù)據(jù)源、編碼、解碼、播放鋒。DirectShow提供了很多 標(biāo)準(zhǔn)過濾器,用戶可以直接便用,但由于媒體格式、壓縮 方式、硬件屬性尊方面的轉(zhuǎn)殊要求用戶經(jīng)常需要自行開 發(fā)過濾器來満足具體需求aDirectShow應(yīng)用程序中主要包含以下3種過濾器: 源過濾器(Source Filter)轉(zhuǎn)換過濾器(Transform Filter)% 呈現(xiàn)過濾器(

3、Render Filler),分別負(fù)責(zé)獲取數(shù)據(jù)詭、處理 數(shù)據(jù)流和播放數(shù)據(jù)流。有時還需要分解過濾器(Splitter Fiher)和合并過濾器(Mux Filter)來分解和合并數(shù)據(jù)漁。DirectShow魁基于COM(組件對象模型)規(guī)范的。過 濾器是一種COM組件°應(yīng)用程序把多個過濾器組件組合 起來形成對蝶體流的處理流程。這-整套過濾器集合被 稱為過濾器圖(Filter Graph)。DirectShow 提供 FGM (Filter Graph Managrr)組件來控制整個過濾器圖。過濾 器前后相連連接點(diǎn)也是COM對象被稱為針腳(Pin)。DirectShow應(yīng)用程序的原理圖如圖

4、I所示。來自文 件系統(tǒng)或外沒的數(shù)據(jù)先由過濾器處理.再存儲到文件系 統(tǒng)或由外設(shè)播放。過濾器負(fù)費(fèi)與文件系統(tǒng)和外設(shè)的交互。 應(yīng)用程序只需控制過濾器,不用關(guān)心其他軟件和硬件的 具體情況。I 應(yīng)用程序DirectShow圖1 DirectShow應(yīng)用稈序除理幗2過濾器組件開發(fā)技術(shù)DirectShow為過濾器組件開發(fā)提供了 一套基類庫 (Base Class Library),包括過濾器基類、釧腳電類和一些 輔助類:基類庫為過濾鄴組件的開發(fā)提供了一個框架,省 去了復(fù)雜的底層編碼丄作零用戶可將開發(fā)工作集中到如 下二個方面:(1)傳輸和處理媒體流。(2)將過濾器封裝為 COM組件。2.1媒體潦的傳輸和處理為了

5、傳輸數(shù)據(jù)用戶過濾器先要與過濾器圖屮氏他過 濾器連接起來。連接時要進(jìn)行媒體格式和內(nèi)存分配器的協(xié) 調(diào)。過濾器之間通過針腳相連:過濾器之間媒體輅式和內(nèi)(接匕頁)掙考文獻(xiàn)J枚勝Photoshop 6.0技巧與實(shí)例北京:人民郵電岀版 社.20012向世明.Vinual C卄數(shù)字圖像與圖形處理北京:電子工業(yè)flfc型機(jī)坷皿用2004平第1期出版 11.20023 Sadiadi F.Expcnmental Design Methodology the Scientific Too) for Performance Evalu/irionn: Pz”: of SPIE.Orlando. 1990(收鴨 H

6、期:2003-07-12)47 籃式過濾器 是除去液體中少量固體顆粒的小型設(shè)備,可保護(hù)設(shè)備的正常工作,當(dāng)流體進(jìn)入置有一定規(guī)格濾網(wǎng)的濾筒后,其雜質(zhì)被阻擋,而清潔的濾液則由過濾器出口排出,當(dāng)需要清洗時,只要將可拆卸的濾筒 取出,處理后重新裝入即可,因此,使用維護(hù)極為方便。1空氣過濾器使受到污染的空氣被潔凈到生產(chǎn)、生活所需要的狀態(tài),也就是使空氣達(dá) 到一定的潔凈度。2液體過濾器 使受到污染的液體被潔凈到生產(chǎn)、生活所需要的狀態(tài),也就是使液體達(dá)到一定的潔凈度。3網(wǎng)絡(luò)過濾器通過設(shè)置來阻擋垃圾信息,使出現(xiàn)在電腦屏幕上的信息盡量符合要求。同吸收的原理將不同顏色的光線分離4光線過濾器,把一些不需要的光線吸收掉。上

7、面說的應(yīng)該是網(wǎng)式過濾器,其實(shí)過濾器還有很多種,譬如疊 片過濾器、砂濾器、碳濾器等等,主要原理都是利用過濾介質(zhì)的孔徑截 留比介質(zhì)孔徑更小的物質(zhì),當(dāng)然有的過濾介質(zhì)還具有吸附等特殊效果。大多過濾器反洗也沒有那么麻煩,只要用清水從過濾出水的一端導(dǎo)入逆向反沖洗過濾器中的介質(zhì)就可以達(dá)到很好反洗效果。本類閥門在管道中一般應(yīng)當(dāng)水平安裝。管道過濾器是除去液體中少量固體顆粒的小型設(shè)備,可保護(hù)壓縮機(jī)、泵、儀表和其它設(shè)備的正常工作,當(dāng)流體進(jìn)入置有一定規(guī)格濾網(wǎng)的 濾筒后,其雜質(zhì)被阻擋,而清潔的濾液則由過濾器出口排出,當(dāng)需要清 洗時,只要將可拆卸的濾筒取出,處理后重新裝入即可,因此,使用維 護(hù)極為方便。生產(chǎn)的 過濾器具有

8、結(jié)構(gòu)緊湊、過濾能力大、壓損小、適用 范圍廣、維護(hù)方便、價格低廉等優(yōu)點(diǎn),其主要適用的物料有:化工、石油化工生產(chǎn)中弱腐蝕性物料,女口:水、油品、氨、烴類等。化工生產(chǎn)中的腐蝕性物料,女口:燒堿、純堿、濃稀硫酸、碳酸、醛酸等。制冷中的低溫物料,如:液甲烷、液氨、液氧和各種冷劑。食品、制藥生產(chǎn)中有衛(wèi)生要求的物料,如:啤酒、飲料、乳制品、糖漿等。新近推出的智能過濾器系列產(chǎn)品,除具有普通過濾器的所有功能 外,同時還具有提供更換、清洗濾網(wǎng)信息的標(biāo)志和遠(yuǎn)程聲光報(bào)警功能, 它的基本原理是利用流體經(jīng)過過濾器入口與出口的壓力差,使智能器內(nèi)壓差式信號發(fā)生器動作,在智能一端的紅圓柱便冒出或發(fā)生報(bào)警信號, 表示濾網(wǎng)被阻塞需

9、要更換或清洗。它克服了當(dāng)今普通過濾器因無法及時指示濾網(wǎng)的阻塞程度而造成斷流、燒泵或誤判濾網(wǎng)阻塞白白浪費(fèi)人力、 物力等弊端,是一種理想的更新?lián)Q代產(chǎn)品。若將它串聯(lián)地安裝在泵的入口或系統(tǒng)管理線的其他部位,即可延長泵和其他設(shè)備的使用壽命,又能保證整個系統(tǒng)安全。用于過濾器性能實(shí)驗(yàn)臺上面,這種試驗(yàn)臺在試驗(yàn) 前都要對系統(tǒng)嚴(yán)格凈化,因此試驗(yàn)系統(tǒng)和為試驗(yàn)系統(tǒng)服務(wù)的污染注入系 統(tǒng)都需配有過濾器,這中過濾器和被試驗(yàn)的過濾器是兩回事兒,它的精 度要求,污物容納量要求要比被試驗(yàn)的過濾器精度高,為區(qū)別同一試驗(yàn) 系統(tǒng)中的兩類過濾器,這種過濾器稱為試驗(yàn)臺過濾器,被試驗(yàn)的過濾器稱為被試過濾器。http:/www.wx yn Y

10、型過濾器(水過濾器)屬于管道粗過濾器系列,也可用于氣體或其他介質(zhì)大顆粒物過濾,安裝在管道上能除去流體中的較大固體雜質(zhì),使機(jī)器設(shè)備(包括壓縮機(jī)、泵等)、儀表能正常工作和運(yùn)轉(zhuǎn),達(dá)到穩(wěn)定工藝過程,保障安全生產(chǎn)的作用。該公司所生產(chǎn)的 Y型過濾器(水過濾 器)能根據(jù)客戶具體要求 (特殊壓力、特殊口徑)定制。Y型過濾器(水 過濾器)具有制作簡單、安裝清洗方便、納污量大等優(yōu)點(diǎn)。存分配器的協(xié)凋?qū)嶋H上見通過針腳之間的通信來完成的: 主動連接方的過濾器的針腳首先獲取H身支持的所 有媒體格式,然肓把施中種格式送交給披動連接的一 方。被動方的針腳進(jìn)行判斷:如眾支持該格式媒體格式 協(xié)調(diào)成功;如果被動方不支持該格式,就通

11、知主動方主 動方阿提供】種不同的格武送交被動方直到被動方支 持被提供的格式協(xié)調(diào)成功否則當(dāng)主動方用完所有支持 的格式,協(xié)調(diào)失散。DirectShow過法器使用一種稱作內(nèi)存分配器(Ailoca- tor)M COM對象管理媒休流數(shù)據(jù)*當(dāng)2個過濾器連接前. 英中1個過濾廉上曲釗腳提供1個內(nèi)存分配器.另外1個 過濾器上的針腳對這個內(nèi)“分配器進(jìn)行檢測。當(dāng)2個針 腳都支持該內(nèi)存分死器時、協(xié)調(diào)成功。媒體流傳輸開始之前,內(nèi)存分配器負(fù)費(fèi)創(chuàng)建-系列 內(nèi)存緩沖區(qū)。媒體流傳輸時,上游(Upsiream)過濾器填充 這些緩沖區(qū)并把它們傳送給下?lián){(Dow訕zm)過濾器。 DirectShow便用一種稱作媒體采樣包(Med

12、ia Sample) 的COM對象管理單個緩沖區(qū)。通過控制媒體采樣包對 象可以修改當(dāng)前緩沖區(qū)中的媒體類型、時間截等信息. 也可以利用算法處靈媒體數(shù)據(jù).從而實(shí)現(xiàn)對媒體流的 處理。2.2 COM組件的實(shí)現(xiàn)COM組件的實(shí)現(xiàn)包括如下內(nèi)容:用接口規(guī)定過濾器 組件對外提供的功能;提供類廠,用以創(chuàng)建COM對©的 實(shí)例;提供COM對象所在小1文件的各個輔助函數(shù)以完 成COM組件在應(yīng)用程序中的載入和釋放在注冊表中的 注冊和注銷°DirectShow中的過濾器、針腳等COM對象通過接口 對外提供各種功能:除了從供標(biāo)準(zhǔn)的接口之外.Direct- Show還提供f DECLAREJNTERFACE

13、宏讓用戶白定義 接口 從而滿足用戶對過濾器組件的指定要求。COM實(shí)現(xiàn)機(jī)制中用類廠創(chuàng)建COM對象實(shí)例。DirectShow 提供了類廠類CClasfiFactory和類廠模板類 CFacloryTemphteo通過將不同的類廠模板的內(nèi)容填入類 廠,實(shí)現(xiàn)不同的類廠對象從而創(chuàng)建不同COM對象實(shí)例。過濾器是dll文件格式的COM組件需要以下函數(shù): DllMain(tt 人時的人口) .DllGetChssObjectf 創(chuàng)建類廠對 ft).DllCanUnloadNow(判斷是否釋放 dll).DllKegis- terServer(在注冊表中注冊 dll) DllUnregisterServer(E

14、 注 冊表中反注冊dll)o DirectShow已經(jīng)實(shí)現(xiàn)/前3個函數(shù)。 后面的2個函數(shù)通常調(diào)用DirectShow中的函數(shù)AMovieDll- RegisterServer2()來實(shí)現(xiàn)即:STDAPI DllHegiMerServerf) relurn AMovieDllRegiMerServer2(TRUE ):|STDAPt DllUnrcjistcrScrvcrt)(return AMovieDliRcgigterScrvcr2(FALSE); |3過濾器組件開發(fā)技術(shù)應(yīng)用實(shí)例下面介紹過濾器組件開發(fā)技術(shù)在網(wǎng)絡(luò)視頻肢務(wù)中的 一個應(yīng)用實(shí)例。"網(wǎng)絡(luò)數(shù)7攝像機(jī)系統(tǒng)使用攝像機(jī)采集 視魏經(jīng)

15、過編碼壓縮后發(fā)送到網(wǎng)絡(luò)上 客戶端程序接收數(shù) 據(jù)并解碼。用戶過濾器利用這些數(shù)據(jù)牛成視頻流進(jìn)行播 放或者*像“ “網(wǎng)絡(luò)效宇攝像機(jī)客戶端程序的堪本流程 如圖2所血便盤錄像W 2機(jī)”客戶琳裡序洗程客戶瑞程序采用多線程的方式網(wǎng)絡(luò)數(shù)據(jù)接收線程、 解碼線程與視獲流生成線程同時運(yùn)行"在線程之間使用 隊(duì)列存放數(shù)據(jù):前一個線程將數(shù)抿?qū)懭岁?duì)列后一個線程 從隊(duì)列中取出數(shù)據(jù)。要實(shí)現(xiàn)的過波器組件例程位于視頻 流生成線程內(nèi)與解碼線程共享一個數(shù)據(jù)隊(duì)列。此隊(duì)列放 在個自定義的類CDataAdmin中解碼線程把數(shù)據(jù)放到 隊(duì)列中。用戶過濾器從隊(duì)列中取出數(shù)據(jù)生成視頻流。 3.1用戶過濾器的實(shí)現(xiàn)(1) 選擇合適的羞類用戶過濾

16、器使用號亠過濾器圖外部的數(shù)據(jù)生成視頻 流屬于源過濾器?;悗熘械腃Source類楚源過濾器的 基類,CSource使用CSourceStream基類作為它的針腳 本例中從這2個類派生出CCuslomFilter和CCuh- lomPin,作為實(shí)際使用的過濾器類和針腳類。(2) 通過自定義接口獲得隊(duì)列數(shù)據(jù)為了獲得過濾器外部的隊(duì)列數(shù)抿.需要為CCustom- Fill和提供一個自定義的接口。下面的代碼定義了一個 IDataSource 接 U : DECLAREJNTERFACE4IDataSource. IUnknown) (STDMETHO9 (SetData)(THIS.CDataAdmin

17、 * pData)PURE;)0 CCustomFilter 繼承該接口,對外捉供 了一個SctD妣(牒作。Sed)ata()將外部傳入的CDataAdmin » 類型的指針賦值給CCustomFiiter的成員變量,過 濾器即獲取到外部隊(duì)列數(shù)據(jù)二(3) 協(xié)調(diào)線體類型CSourceStream基類完成了媒體類型協(xié)調(diào)中大部分 的工作,用戶只需要描定過濾器針腳支持的媒體格式二 CSourceStream的成員函數(shù)GetMediaTypef)負(fù)貴憲成這 個任務(wù)用戶必須在該兩數(shù)中為過濾器指定媒體格式:媒 體流的信息存放在一個V1DEO1NFOHEADER的結(jié)構(gòu)中, 指針pvi擔(dān)向該結(jié)構(gòu)數(shù)Ge

18、tMedi«Tyf()+指定媒體格 式的代硏如下:pMedmType-SetType(&M£DIATYPE_Viieo);/設(shè)置媒體主類舉 flk型機(jī)扁血用2004年聲1期48 硬盤備份和挨復(fù)的軟件設(shè)計(jì)原理及賣現(xiàn)pMediuTypc->SelSublype(&GetBilmupSublypr(&pvi"> bmiHeader);/設(shè)肚媒體次類型pMediaTypc->SctFonnatType(&FORM AT.V idcolnfo);設(shè)登媒體格式 pMediaType->SetTemporalCompres

19、sion(FALSE);/不斥編媒體流 pMediaType">Set$ampieSi2e(pvi->bmiHeader.biSixefm* age);/設(shè)ISB!體采樣包大小(4) 協(xié)調(diào)內(nèi)存分配器CSourceSlream菇類完成了大多數(shù)內(nèi)存分配器的協(xié) 闊工作°用戶還需耍指定毎個媒體采樣包的大小。 CSourceStream 基類的成員兩數(shù) DecideBufferSixe()負(fù)賁 完成Jtt任務(wù)衛(wèi)下面是該隕數(shù)中的主婆代碼。pRequest->cbBuffer=pvi->bmiHeader.biSizelniage;/族取采樣包大小需求侑息 ALL

20、OCATOR-PROPERTIES Actual; hr=pAlloc->SetProperties(pReqiiest.& Actual);/指定采樣包大小并返同實(shí)際的設(shè)崑結(jié)杲(5) 生成規(guī)頻流CSourceStream基類的FillBufTer()成員函數(shù)負(fù)赍把 外部隊(duì)列數(shù)搦加入釗視瀕流中。用戶可以在此函數(shù)內(nèi)部先 處理數(shù)據(jù)再把處理過的數(shù)據(jù)加入視碩流中:,本例中經(jīng)用戶 過濾器解碼嚴(yán)的數(shù)據(jù)不需耍進(jìn)行處理。函數(shù)FillBuffer() 中的主嚶代碼如下。獲取當(dāng)舸媒體采樣包對應(yīng)的緩沖區(qū)的地址和大小BYTE -pData;DWORD cbDala;pSamplc->CetPoin

21、ter(&pData); cbData=pSamplc->GetSize();/獲取媒體信息 VIDEOINFOHEADER pVih«(VIDEOINF()HEADER ) m_mt.pbFormat ; 從數(shù)鋸隊(duì)列中取出數(shù)據(jù)填充到當(dāng)?shù)目棝_區(qū)屮 m_pFiIePack=m_pPinData->GfftDataBuffer(); memcpyfpDala.rr.p PilepRck,min(pVih->bmiHeader-biSixelniiigccbData); 給媒體采樣包加上時間戡REFERENCE-TIME rtSlart=mJFrameNumber

22、 m.rlFrameLength ; REEEKENCE.TIME rtStopsrtSlart-FmrlFranieLength ; pSample->SetTi!ne(&rtStarl v&rlStop);幀汁數(shù)器加】in_iFrameNumber+4:(6) 生成COM紐件過濾器開發(fā)工作的戢后一步是將過濾器封裝成COM 組件。此外需姿提供類廠樓板°代碼如下:CKucloryTemphte g_T<!mplalt» =(R.wezCutomFiltcrt &CLSIDCustomFiherfCCustomFilter: Createf

23、nstance.徴型機(jī)與應(yīng)用2004早駆1 491NULL.NULL "/將過濾器信怠填人類廠役板ini g-cTcmp!atcH=Miceof(gjrrrnplalcs)/sizcof(g_Te(ri- phtesLOJ);/; U板卜數(shù) 3.2實(shí)際應(yīng)用效果4V網(wǎng)絡(luò)數(shù)字?jǐn)z像站系統(tǒng)的客戶端應(yīng)用稈序中使用 上例的過濾器組件,若連接到視鎂播放過濾器(Video Renderer)則叫播放視頻播放效果如圖3所示;若連接到 寫文件過濾器(File Writer)!將視麴冇接寫成陵盤文 件實(shí)現(xiàn)視頻錄像。過濾器采用COM組件的形式,可方便 地移植到其他機(jī)器和應(yīng)用稈申中。ffi 3便用本例中過淀器

24、禱放的視楨4結(jié)束語過濾器組件在H削多種多樣的音魏視頻流媒體應(yīng)用 中發(fā)揮若重要作用。過謔器組件的開發(fā)具有較大的實(shí)用 價值但有-定的雄度和蟻雜性。本文討論了用戶過濾貉 開發(fā)中的原理和技術(shù)匚文中過濾器組件例子的開發(fā)過程 具有較大的通用性,可供其他開發(fā)者參考,參考文獻(xiàn)1 KrughnRki I) J.VC4>技術(shù)內(nèi)積第4版)北京:清華大學(xué) 岀版社.19992潘愛民.COM原理和應(yīng)用北京:淸華大學(xué)岀版社.1999(收稿 H 期:2003-07-10)對于-個成熟的系仏 在設(shè)計(jì)和實(shí)現(xiàn)中農(nóng)考慮直 系統(tǒng)運(yùn)行比較穩(wěn)定吋及時備份碩盤數(shù)據(jù)“本文簡婆介' 紹了一種媲盤備份和吹復(fù)的工具軟件的設(shè)計(jì)原理片$

25、給岀了部分模塊的設(shè)計(jì)方案和偽代碼°其中就點(diǎn)講述> 啟動扇區(qū)的結(jié)構(gòu)以扇區(qū)為單位對破盤逬行讀 與的方法喚盤的上仗辭鍍糸統(tǒng)譜程的捕伏和終止 方法以及備份文件數(shù)據(jù)結(jié)構(gòu)的紹織方案。%武漢中國地質(zhì)大學(xué)信息工程學(xué)院(4300741王興眾楊柳:一 49 DirectShow過濾器組件開發(fā)技術(shù)及其應(yīng)用實(shí)例I-H巳山、作者:盛健,季曉勇作者單位:南京大學(xué)電子科學(xué)與工程系210093刊名:微型機(jī)與應(yīng)用|m|廠一 |英文干刊名:MICROCOMPUTER & ITS APPLICATIONS年,卷(勒:2004 23(1)被引用次數(shù):11次參考文獻(xiàn)(2條)1. Kruglinski D JVC

26、+技術(shù)內(nèi)幕 19992. 潘愛民COM理和應(yīng)用1999相似文獻(xiàn)(10條)1. 期刊論文 張理慧.張宇.陳文濱基于DirectShow的視頻捕獲-計(jì)算機(jī)工程2004,30(19)介紹了DirectShow勺原理釬對傳統(tǒng)旳多媒體系統(tǒng)開發(fā)方法旳不;提出了一種基于)irectShoW勺視頻捕獲軟件設(shè)計(jì)方案對系統(tǒng)中視頻實(shí)時捕獲及壓 縮存儲媒體流的讀取回放作出了分析析勾建了過濾器圖.2. 學(xué)位論文魯漫紅基于DirectShow勺H.264視頻流過濾器的設(shè)計(jì)與實(shí)現(xiàn)2006隨著多媒體信息的豐富和因特網(wǎng)的發(fā)展,對多媒體數(shù)據(jù)流的實(shí)時傳輸要求越來越高,如何提供高質(zhì)量的多媒體數(shù)據(jù)流處理模塊就成為亟待解決的問 題。H

27、. 264編碼是最新的視頻編碼標(biāo)準(zhǔn),但是缺乏符合rectshow標(biāo)準(zhǔn)的H 264編碼過濾器限制了它的廣泛應(yīng)用。雖然有一些商業(yè)版本,但從網(wǎng)上下載 的比較好用的過濾器一般都采用了版權(quán)保護(hù)手段,沒有注冊的用戶不能完全使用其功能。本文研究基于DirectShow平臺的H 264視頻處理過濾器的設(shè)計(jì)與實(shí)現(xiàn)。首先,分析了微軟的rectShow勺媒體流的整體架構(gòu),探討了在 DirectShow臺下開發(fā)DirectShowi濾器的一般思路和步驟。其次,結(jié)合當(dāng)前的開源264的編碼解碼庫,設(shè)計(jì)并且實(shí)現(xiàn)了基于264勺媒體流編碼過 濾器和解碼過濾器。該過濾器是基于OM術(shù)的,可以注冊到系統(tǒng)中以供其他程序調(diào)用。最后,系統(tǒng)

28、設(shè)計(jì)了過濾器的版權(quán)保護(hù)模塊。用戶只有當(dāng)使用特定 的程序或者輸入相應(yīng)的注冊信息才能夠去除版權(quán)保護(hù)信息。這樣有效的保護(hù)了視頻過濾器的不被未授權(quán)的用戶使用。由于使用了開放DirectShow媒體流平臺,H 264的視頻處理過濾器易于被其他應(yīng)用程序調(diào)用。通過使用該過濾器,結(jié)合系統(tǒng)自帶的各種過濾器 ,用戶可以快速且有效的建立一個基于264的流媒體系統(tǒng),系統(tǒng)有著很好的應(yīng)用前景。3. 期刊論文 魯漫紅.LU Man-hong基于DirectShow的視頻過濾器版權(quán)保護(hù)的實(shí)現(xiàn)-科學(xué)技術(shù)與工程2009,9(8)微軟公司的DirectSho研 發(fā)包為開發(fā)高質(zhì)量的多媒體軟件提供了一個開放的平 過濾器是DirectS

29、how勺基本組成部分由于DirectShow勺開放性 任 何過濾器在操作系統(tǒng)中注冊后都可以被其他程序調(diào)用為了保護(hù)過濾器核心技術(shù)實(shí)現(xiàn)了兩種過濾器的保護(hù)方案一種是嚴(yán)格的版權(quán)保護(hù)未授權(quán)的就不能 使用;另一種是允許使用但在視頻上疊加了提示注冊的文本.4. 期刊論文 瞿幼苗.李偉華.陳華勝基于IPv6組播和DirectShow勺視頻傳輸-科學(xué)技術(shù)與工程2010,10(4)單播技術(shù)是Pv4網(wǎng)絡(luò)下視頻傳輸?shù)闹饕侄卧谥T如視頻會議的多客戶端應(yīng)用中單播耗費(fèi)了很多網(wǎng)絡(luò)帶寬和服務(wù)器資源隨著下一代網(wǎng)絡(luò)的快速發(fā)展 及視頻業(yè)務(wù)的飛速增長單播技術(shù)構(gòu)建的視頻傳輸系統(tǒng)已無法滿足這類業(yè)務(wù)在帶寬及服務(wù)質(zhì)量方面的需求用IPv6組播技

30、術(shù)進(jìn)行多點(diǎn)數(shù)據(jù)傳醐總有效提 高網(wǎng)絡(luò)帶寬利用率提高服務(wù)質(zhì)量并極大減少網(wǎng)絡(luò)及服務(wù)器負(fù)載基于IPv6組播和微軟DirectSho覦頻處理榘構(gòu)設(shè)計(jì)并實(shí)現(xiàn)了一個視頻流媒體的組播傳 輸系統(tǒng)實(shí)驗(yàn)結(jié)果表明該系統(tǒng)可以滿足Pv6網(wǎng)絡(luò)下實(shí)時視頻傳輸?shù)男枨?5. 期刊論文 魯漫紅.段益群.LU Man-hong DUAN Yi-qun基于DirectShow勺H.264視頻流過濾器的設(shè)計(jì)與實(shí)現(xiàn)-科學(xué)技術(shù)與工程2009,9(9)H.264是最新的視頻壓縮標(biāo)準(zhǔn)而DirectShow則是多媒體設(shè)計(jì)的一個非常好的框麴DirectShow設(shè)計(jì)并且實(shí)現(xiàn)了有自主版權(quán)的.264®頻流編解碼過 濾器利用這兩個過濾器可以將視頻

31、壓縮成264格式,然后將h.264®頻文件轉(zhuǎn)為XV文件使用Windows Media Play等普通播放器就能播放.6. 期刊論文 方波.曾致遠(yuǎn)基于DirectShow勺流式立體視頻播放器的設(shè)計(jì)與實(shí)現(xiàn)-電視技術(shù)2004(10)介紹了網(wǎng)絡(luò)環(huán)境下利用)irectShow現(xiàn)立體視頻的解碼、合成、播放寸實(shí)現(xiàn)解碼器的關(guān)鍵部分網(wǎng)絡(luò)流式源過濾器、立體變換過濾器以及補(bǔ)色立體 圖合成算法進(jìn)行了深入研翔且給出了利用DOM術(shù)實(shí)現(xiàn)立體視頻播放的主要過程.7. 學(xué)位論文徐瑛基于DirectShow勺流媒體技術(shù)在遠(yuǎn)程教學(xué)中的應(yīng)用與實(shí)現(xiàn)2006從上個世紀(jì)末起,遠(yuǎn)程媒體教學(xué)突破時空和地域的限制,更新了教學(xué)模式。鑒f

32、ifectShow技術(shù)能為遠(yuǎn)程教學(xué)提供高品質(zhì)媒體流的捕獲與回放,集 通用性和開放性、支持寬松的格式變化等優(yōu)勢于一體,故確定ectShow為遠(yuǎn)程教學(xué)系統(tǒng)研究設(shè)計(jì)的支撐技術(shù),以實(shí)現(xiàn)教學(xué)用媒體流在網(wǎng)絡(luò)中以實(shí)時、 無需下載等待的方式進(jìn)行傳輸與播放。論文依據(jù)相關(guān)的技術(shù)理論,結(jié)合遠(yuǎn)程教學(xué)的實(shí)際需求,較為全面、詳細(xì)和規(guī)范的制定出以軟件為主的遠(yuǎn)程教學(xué)系統(tǒng)的整體與各功能部分的設(shè)計(jì)方案 ,通過編程構(gòu)建并實(shí)現(xiàn)系統(tǒng)各單元過渡器的相關(guān)關(guān)系及連接。將數(shù)據(jù)壓縮技術(shù)、網(wǎng)絡(luò)中媒體流的傳輸控制技術(shù)有機(jī)的結(jié)合在一起,有效解決了網(wǎng)絡(luò)帶寬 局限的問題,達(dá)到縮短客戶對多媒體數(shù)據(jù)回放的等待時間和為用戶提供較好服務(wù)質(zhì)量的目的。系統(tǒng)解決了遠(yuǎn)程教學(xué)音視頻信息的實(shí)時直播,多媒體教學(xué) 文件的課后點(diǎn)播,以及運(yùn)用組播與點(diǎn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論