亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        視音頻硬盤采集壓縮系統(tǒng)設(shè)計、應(yīng)用及分析

        2011-06-06 08:13:20周偉鋒熊金凱杜歆文
        電視技術(shù) 2011年20期
        關(guān)鍵詞:視音頻窗體采集卡

        周偉鋒,熊金凱,李 榕,杜歆文

        (蘇州廣播電視總臺技術(shù)中心,江蘇 蘇州 215006)

        0 引言

        視音頻采集的方式有很多,從傳統(tǒng)的磁帶采集,到現(xiàn)在的藍光錄制、P2卡采集,還有硬盤錄像機的應(yīng)用?;谟脖P的采集由于其低廉的成本、方便的文件傳輸方式有著不可替代的作用。但是,采集文件龐大的體積、文件格式的兼容性、較長的轉(zhuǎn)碼時間使人們對其望而卻步,制約了其發(fā)展。蘇州廣播電視總臺通過Decklink系列視頻采集卡以及MainConcept編解碼包的研究,基于DirectShow架構(gòu),開發(fā)了視音頻硬盤采集并實時壓縮系統(tǒng),克服了硬盤錄制的種種缺點。

        1 硬件結(jié)構(gòu)

        對于采集PC的配置無過高要求,可以使用SATA硬盤或者更高速度的SAS盤,SATA硬盤的傳輸速度能夠達到60 Mbyte/s,相對于50 Mbit/s的視頻讀寫速度,帶寬完全夠用,因此在此方面不需特別考慮。PC至少有一個PCIe擴展槽,用來插Decklink采集卡作為信號輸入和采集使用。Decklink采集卡為全數(shù)字接口,因此只能輸入數(shù)字SDI信號。

        2 軟件結(jié)構(gòu)

        MainConcept公司是全球著名的視音頻編碼器解決方案,其視音頻編解碼器具有良好的兼容性和強勁的性能,更關(guān)鍵的是其支持視音頻的實時編解碼,本文主要采用了MainConcept編解碼器MPEG Video Encoder,Layer II Audio Encoder,MainConcept Multiplexer,DV Pro Video Encoder等。

        軟件采用DirectShow架構(gòu),如圖1所示,該架構(gòu)分為虛線下方Ring 0特權(quán)級別的硬件設(shè)備,以及虛線上Ring 3特權(quán)級別的應(yīng)用層,應(yīng)用層中的矩形框內(nèi)代表DirectShow系統(tǒng)。該系統(tǒng)中,F(xiàn)ilter作為一個個功能模塊參與數(shù)據(jù)處理,同時Filter Graph管理整個數(shù)據(jù)流的處理過程,各個Filter在Filter Graph中按一定的順序連接成一條流水線協(xié)同工作。按照功能來分,F(xiàn)ilter大致分為3類:Source Filters,Transform Filters,Rendering Filters。Source Filters主要負(fù)責(zé)獲取數(shù)據(jù),數(shù)據(jù)源可以是文件,也可以是采集卡、數(shù)字?jǐn)z影機等,然后將數(shù)據(jù)傳輸給Transform Filters;Transform Filters主要負(fù)責(zé)數(shù)據(jù)的格式轉(zhuǎn)換,例如數(shù)據(jù)分離/合成、解碼/編碼等;Rendering Filters主要負(fù)責(zé)數(shù)據(jù)的最終去向,將數(shù)據(jù)送給顯卡、聲卡進行多媒體的演示,或者輸出到文件進行存儲。

        圖1 DirectShow基本架構(gòu)

        如圖2和圖3所示,視音頻采集、壓縮、存儲的整個流程可以看做一個Filter Graph。Decklink視頻卡安裝完成后,會在系統(tǒng)中注冊一個視頻輸入設(shè)備Decklink Video Capture和一個音頻輸入設(shè)備Decklink Audio Capture,兩者為該Filter Graph的Source Filters,負(fù)責(zé)獲得數(shù)據(jù),然后向下傳輸,在Decklink Video Captur的Capture Pin后接一個Smart Tee,對采集進來的視頻數(shù)據(jù)進行分流,一部分經(jīng)過AVI Decompressor到達Video Render,對視頻進行預(yù)覽,另一部分輸送到下一步進行編碼。該系統(tǒng)分別實現(xiàn)了MPEG-2的編碼和DVCPro的編碼(分別對應(yīng)圖2和圖3)。相應(yīng)的,對于MPEG-2編碼格式,音頻部分同時要經(jīng)過Layer II Audio Encoder,而對于DVCPro編碼,音頻部分不需要經(jīng)過編碼,直接輸入Multiplexer對視音頻進行同步混合,最后在File Write將文件寫入硬盤,在文件保存Filter方面,DVCPro格式用的是系統(tǒng)自帶的File Write,而MPEG-2格式用的是MainConcept MPEG Sink,理論上對于MPEG-2文件,其實兩個都能用,但對于DV格式,只能用File Write。

        圖2 采集、壓縮、存儲流程(以DV25/50方式壓縮)

        圖3 采集、壓縮、存儲流程(以MPEG-2方式壓縮)

        3 技術(shù)實現(xiàn)要點及難點

        3.1 預(yù)覽窗口

        預(yù)覽視頻流到達Video Renderer后需要將它在一個窗口顯示出來。DirectShow提供了Video Renderer過濾器來顯示視頻,該過濾器可用于所有的支持DirectX的平臺,它對平臺沒有其他特殊的要求。也可以是GDI來顯示視頻。它是在Windows XP之前操作系統(tǒng)的默認(rèn)視頻顯示過濾器;Video Mixing Renderer Filter 7(VMR-7)可用于Windows XP操作系統(tǒng),并且是該系統(tǒng)下的默認(rèn)視頻顯示過濾器,與老的視頻顯示過濾器相比,它具有一些更強大的性能,包括采用插件模式來控制DirectShow顯示;Video Mixing Renderer Filter 9(VMR-9)是一個更新的視頻混合顯示過濾器,它采用了Direct3D來顯示,可用于所有的支持DirectX的平臺,它不是默認(rèn)的顯示過濾器,因為與其他的顯示過濾器相比,對系統(tǒng)要求更高。一般來說,在視頻顯示應(yīng)用上,VMR-9是首選,因為它使用了最新的圖像API,并且提供了最好的性能。DirectShow視頻顯示可以選擇在窗體模式或者非窗體模式下進行。在窗體模式下,視頻將創(chuàng)建一個自己的窗體來顯示。在非窗體模式下,視頻可以在程序的一個窗口上顯示,而不讓視頻自己創(chuàng)建窗體來顯示。Video Renderer過濾器只支持窗體模式,VMR-7和VMR-9支持這兩種模式,默認(rèn)狀態(tài)是窗體模式。在開始播放前,在過濾器圖表管理器中去查找IVideoWindow接口:

        IVideoWindow*pVidWin=NULL;

        pGraph->QueryInterface(IID_IVideoWindow,(void**)&g_pVid-Win);//調(diào)用IVideoWindow::put_Owner方法去處理你應(yīng)用程序的窗體。該方法提供了一個OAHWND類型的變量,所以要把句柄轉(zhuǎn)換為該類型

        pVidWin- >put_Owner((OAHWND)hwnd);//調(diào)用 IVideoWindow::Put_WindowStyle來改變視頻窗體的類型

        pVidWin->put_WindowStyle(WS_CHILD|WS_CLIPSIBLINGS);//WS_CHILD標(biāo)志設(shè)置視頻窗體為一個子窗體,WS_CLIPSIBLINGS標(biāo)志可以防止視頻窗體在另一個子窗體的客戶區(qū)內(nèi)顯示視頻

        RECT grc;

        GetClientRect(hwnd,&grc);

        pVidWin- > SetWindowPosition(0,0,grc.right,grc.bottom);//調(diào)用IVideoWindow::SetWindowPosition方法可以視頻窗口的相對于你應(yīng)用程序的客戶區(qū)的位置。該方法的參數(shù)帶了一個RECT參數(shù),用它去指定視頻窗口的位置

        videoWindow->put_Visible(OATRUE);

        3.2 Filter屬性設(shè)置

        在大多數(shù)商業(yè)軟件中,并不會將Filter的屬性頁直接顯示給用戶。因為屬性頁的界面過于簡單(有時候還可能是很隨意的),它們主要是用作Filter接口調(diào)試。在此程序中,由于涉及參數(shù)較多,并且面向使用者較為專業(yè),因此大多說Filter的屬性頁直接暴露給用戶,以進行詳細、全方面的設(shè)置及調(diào)試。

        本文使用OleCreatePropertyFrame函數(shù),在程序中直接顯示Filter屬性頁。在某些地方,也可編寫屬性窗口對Filter進行設(shè)置,如對DV Pro Video Encoder的設(shè)置中,由于Filter提供的屬性頁過于簡陋,該處選擇通過API自行設(shè)計編寫設(shè)置對話框,更適合實際使用需求。

        3.3 參數(shù)保存

        當(dāng)關(guān)閉窗口時,當(dāng)前設(shè)置參數(shù)會自動保存到當(dāng)前目錄下的config.ini文件中,下次打開程序時自動調(diào)用,恢復(fù)關(guān)閉前狀態(tài),減少了選擇輸入設(shè)備、文件格式等操作,又不失靈活性。

        3.4 視音頻分離

        在某些時候并不需要將視音頻復(fù)合同步成一個文件,而是需要分別保存視音頻文件,該程序提供視音頻分離選擇,在Filter Graph中,將最后的Multiplexer去掉,對視頻流和音頻流分別調(diào)用File Write以保存為兩個文件。

        另外需要注意的是,對于MPEG-2的壓縮和DVCPro的壓縮,Multiplexer的選擇是不一樣的,MPEG-2的視音頻流要通過MainConcept Multiplexer進行復(fù)合,而DVCPro的視音頻流使用系統(tǒng)自帶的AVI Mux即可。

        3.5 其他

        在MPEG-2系統(tǒng)中,根據(jù)傳輸媒體的質(zhì)量不同,MPEG-2中定義了兩種復(fù)合信息流:傳送流(Transport Stream,TS)和節(jié)目流(Program Stream,PS)。PS包與 TS包結(jié)構(gòu)上的差異導(dǎo)致了它們對傳輸誤碼具有不同的抵抗能力,因而應(yīng)用的環(huán)境也有所不同。TS碼流具有較強的抵抗傳輸誤碼的能力,因此目前在傳輸媒體中進行傳輸?shù)腗PEG-2碼流基本上都采用了TS碼流。但是對節(jié)目制作環(huán)境,通常采用PS流。在本文中要注意的是,Multiplexer和File Write的流類型要一致。

        如果用Decklink視頻卡采集DV格式素材,還須用到Decklink PAL Field Swap這個Filter,對視頻場序進行調(diào)整,否則采集的視頻場序是錯的。但是對于AJA和Bluefish444的視頻卡,不需要對場序進行調(diào)整。

        4 性能分析

        測試用機采用Windows XP Professional操作系統(tǒng),AMD Athlon 3800+的CPU,內(nèi)存為2 Gbyte,可以說是完全低于主流配置。但是測試下來,不管是MPEG-2還是DVCPro的壓縮格式,CPU使用率基本保持在40%左右,后者甚至略低一些(見圖4和圖5)。操作完全沒有遲滯感。所以為達到便攜性,一般筆記本式計算機完全可以達到要求,只是對于筆記本Decklink卡的安裝稍顯麻煩,因此建議對臺式機進行改裝,以滿足便攜性的要求。

        圖4 以MPEG-2方式壓縮性能分析(截圖)

        圖5 以DV25方式壓縮性能分析(截圖)

        5 小結(jié)

        本文采用DirectShow平臺,利用C++進行程序開發(fā)設(shè)計,完成了一套視音頻硬盤采集壓縮系統(tǒng)。對該系統(tǒng)的硬件平臺、軟件環(huán)境進行了具體的描述,同時針對開發(fā)過程中遇到的重點和難點進行了分析和總結(jié)。最后,對該系統(tǒng)的性能進行了評測分析。該系統(tǒng)的架構(gòu)簡單,所需硬件、軟件成本低,硬件只需一臺普通PC和采集卡,軟件方面需購買部分編解碼包即可??伸`活應(yīng)用于轉(zhuǎn)播車、演播室等多種場合,可以取代Premiere等非編軟件,避免只用采集功能而安裝整個非編軟件這種“殺雞用牛刀”的情況,同時對視音頻文件進行了實時壓縮,節(jié)約存儲空間和后期處理的時間。

        猜你喜歡
        視音頻窗體采集卡
        高精度AD采集卡性能測試及評價方法研究
        中國測試(2022年2期)2022-03-19 09:57:30
        我國首個超高清視音頻國家重點實驗室在滬啟動建設(shè)
        中國廣播(2020年1期)2020-02-20 14:29:35
        試談Access 2007數(shù)據(jù)庫在林業(yè)檔案管理中的應(yīng)用
        檔案天地(2019年5期)2019-06-12 05:12:02
        面向數(shù)控機床的多通道傳感數(shù)據(jù)采集卡設(shè)計
        并行高速采樣在地震物理模擬采集中的應(yīng)用
        PCI-e高速數(shù)據(jù)采集卡的驅(qū)動與上位機軟件設(shè)計
        電子器件(2015年5期)2015-12-29 08:43:12
        基于內(nèi)容結(jié)構(gòu)特征的Flash電影視音頻特征的提取研究
        電視臺視音頻資料數(shù)字化存儲
        基于LayeredWindow的異形窗體局部刷新
        中文信息(2014年2期)2014-03-06 23:49:14
        巧設(shè)WPS窗體控件讓表格填寫更規(guī)范
        国产一区二区三区探花| 吃下面吃胸在线看无码| 国产天堂在线观看| 国产成人亚洲精品无码mp4| 国产午夜在线视频观看| 亚洲国产婷婷六月丁香| 乱中年女人伦| 国产亚洲日本精品无码| 欧美xxxx做受欧美| 女人被狂c躁到高潮视频| 久久亚洲私人国产精品| 国产av无码专区亚洲av极速版| 色噜噜狠狠狠综合曰曰曰| 国自产偷精品不卡在线| 久久久久久久一线毛片| AV无码人妻一区二区三区牛牛| 久久久国产精品ⅤA麻豆百度 | 丝袜美腿福利一区二区| 久久精品国产久精国产爱| 国产 麻豆 日韩 欧美 久久| 无套内射无矿码免费看黄| 无码人妻精品一区二区三区不卡| 少妇人妻偷人精品无码视频| 樱花AV在线无码| 亚洲欧洲国无码| 一本色道久久综合亚州精品 | 国产黄片一区二区三区| 三级日韩视频在线观看| а天堂中文地址在线| 国产乱码卡二卡三卡老狼| 日日噜噜噜夜夜爽爽狠狠视频| 日本免费人成视频播放| 被黑人做的白浆直流在线播放| 无码国产精品一区二区免费97| 亚洲熟妇av日韩熟妇av| av高清视频在线麻豆免费观看| 射进去av一区二区三区| 久久精品国产免费一区二区三区| 亚洲自拍偷拍色图综合| 久久天堂av综合合色| 肥臀熟女一区二区三区|