freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于圖像處理和識別的灼熱絲火焰高度檢測本科畢業(yè)論文-文庫吧

2025-06-08 15:49 本頁面


【正文】 組東西。DirectX是一個大家庭,并且隨著DirectX的版本更新,家族成員也在不斷發(fā)展壯大。微軟的DirectX設計為“硬件設備無關性”?!坝布O備無關性”,即是在利用DirectX進行開發(fā)設計時,可以使用與設備無關的方法提供設備相關的性能。目前,DirectX已經成為一種標準,為應用程序開發(fā)人員和硬件廠商之間提供關系解耦。DirectX標準的建立,可以為硬件開發(fā)提供測量,硬件廠商不得不按照這一標準進行產品改進。同時,通過使用DirectX所提供的接口,開發(fā)人員可以充分利用硬件可能帶來的高興能,從而屏蔽了硬件中的具體細節(jié),極大地縮短了開發(fā)進度。DirectX采用組件對象模型(COM)標準,因此不同的對象版本可以有不同的接口,這使得DirectX開發(fā)的程序即使在未來也能得到完全的兼容和支持。DirectX中成員包括:DirectX Graphics:集成了以前DirectDraw和Direct3D技術。DirectDraw:主要負責2D加速,以實現(xiàn)對顯卡內存和系統(tǒng)內存的直接操作。Direct3D:主要提供三維繪圖硬件接口,它是開發(fā)三維DirectX游戲的基礎。DirectInput:主要支持輸入服務,同時支持輸出設備。DirectPlay:主要提供多人網(wǎng)絡游戲的通信、組織功能。DirectSetup:主要提供自動安裝DirectX組件的API功能。DirectMusic:主要支持MIDI音樂合成和播放功能。DirectSound:主要提供音頻捕捉、回放、音效處理、硬件加速、直接設備訪問等功能。DirectShow:為在Windows平臺上處理各種格式的媒體文件的回訪、音視頻采集等高興能要求的多媒體應用,提供了完整的解決方案。DirectX Media Object:DirectShow Filter的簡化模型,提供更方便的流媒體數(shù)據(jù)處理方案。 DirectShow概述微軟DirectShow是DirectX SDK的成員之一,其前身是ActiveMovie。DirectX SDK是微軟提供的一套在Windows操作系統(tǒng)上開發(fā)高性能圖形、聲音、輸入、輸出和網(wǎng)絡游戲的編程接口。它既支持用WDM(Windows Driver Model)驅動的捕捉卡,也支持VFW(Video for Windows)驅動的捕捉卡。DirectShow簡化了媒體回放,格式轉化和捕捉工作。同時,當要求定制解決方案時,它使應用程序有權使用基的本流控制體系。DirectShow技術是建立在DirectDraw和DirectSound組件基礎之上的,通過DirectSound對聲卡進行控制以播放聲音。DirectShow可提供高質量的多媒體流的捕獲和回放功能;支持多種媒體式格;可以從硬件上捕獲媒體數(shù)據(jù)流;可以自動檢測并使用視頻和音頻加速硬件。因此DirectShow可以充分發(fā)揮媒體的性能,提高運行速度,可以簡化媒體播放、媒體間的格式轉換和媒體捕獲等工作。同時它,還具有極大的可擴展性和靈活性,可以由用戶自己創(chuàng)建組件,并將這個組件加入DirectShow結構中以支持新的格式或特殊的效果。而且DirectX還采用了組件對象模型標準,它具有良好的開放性和可擴展性,軟件開發(fā)人員可以方便地開發(fā)出符合特定算法的編解碼組件。其中DirectShow是在Windows平臺上處理各種媒體格式文件的回放、音視頻設備采集等多媒體應用的軟件技術DirectShow設計初衷就是盡量要把開發(fā)人員從復雜的數(shù)據(jù)傳輸、硬件差異、同步性等工作中解脫出來,總體應用程序框架和層底工作由DirectShow來完成,最終使基于DirectShow框架的開發(fā)多媒體應用程序變得易于開發(fā)。Microsoft DirectX是微軟公司提供的一套在Windows平臺上為創(chuàng)建游戲和其他高質量的多媒體應用程序而設計的一套底層應用程序接口集。它提供了對二維和三維的圖像、聲音效果、音樂、輸入設以備及網(wǎng)絡應用程序的支持。PC機的成功導致了可用硬件的大量繁衍,眾多的供應商為PC機設計了提供各種兼容的產品,但它們卻常常缺乏開發(fā)所需的可靠標準。DirectShow體系結構方框圖如下圖31所示: 圖31 DirectShow體系結構方框圖[4] Filter概述DirectShow是基于模塊化的,每個功能模塊都采用COM組件方式,稱之為Filter(過濾器)。Filter是DirectShow中最基本的概念。DirectShow使用Filter Graph來管理Filter。Filter Graph是Filter的“容器”,F(xiàn)ilter是Filter Graph中最小的功能模塊。DirectShow提供了一系列的標準模塊用于應用開發(fā),開發(fā)者也可以開發(fā)自己的功能Filter來擴展DirectShow的應用,是DirectShow的開發(fā)具有很強的擴展性。Filter一般包含一個到多個的Pin組成。Pin接口本身也是一個COM組件。Filter與Filter之間便是由Pin相互連接,從而構成一條Filter鏈路。每個Filter上都至少實現(xiàn)了一個IBaseFilter的接口。作為一種COM組件,F(xiàn)ilter的創(chuàng)建是通過API函數(shù)CoCreateInstance來完成的:STDAPI CoCreateInstance( REFCLSID rclsid, //指定需要創(chuàng)建的Filter的CLSID LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID riid, LPVOID *ppv)。Filter具有三個狀態(tài):運行,停止,暫停。當一個Filter運行時,便處理媒體數(shù)據(jù)流;停止時,F(xiàn)ilter不再處理數(shù)據(jù);而暫停狀態(tài)通常為運行和停止作為過渡狀態(tài)。Filter一般分為下面幾種類型:(1)Source Filter(源過濾器):源過濾器把數(shù)據(jù)引入到Filter Graph(過濾器圖表)中,數(shù)據(jù)來源可以是文件、網(wǎng)絡、攝像頭等,而不同的Source Filter可以處理不同類型的數(shù)據(jù)源。(2)Transform Filter(變換過濾器):變換過濾器的工作是獲取輸入流,處理數(shù)據(jù),并產生輸出流,其對數(shù)據(jù)的處理包括編解碼、格式轉換、壓縮解壓縮等。(3)Render Filter(提交過濾器):提交過濾器出于過濾器圖表中的最后一級,負責接收數(shù)據(jù)并把數(shù)據(jù)提交給外設。(4)Splitter Filter(分割過濾器):分割過濾器把輸入流分割成多個輸出。例如把AVI格式的字節(jié)流分割成視頻流和音頻流。(5)Mux Filter(混合過濾器):混合過濾器把多個輸入組合成一個單獨的數(shù)據(jù)流。例如把視頻流和音頻流合成為一個AVi格式的字節(jié)流。Filter處理的數(shù)據(jù)流具有各種形式的數(shù)據(jù)格式,即媒體類型(Media Type)。媒體類型實際上是DirectShow定義的一個數(shù)據(jù)結構AM_MEDIA_TYPE:Typedef struct _MedaiType { GUID majortype。 GUID subtype。 BOOL bFixedSizeSamples。 BOOL bTemporslCompression。 ULONG lSampleSize。 GUID formattype。 IUnknown *pUnk。 ULONG cbFormat。 BYTE *pbFormat。} AM_MEDIA_TYPE。媒體類型主要由3個部分來描述:majortype(主類型,定性地描述媒體類型,如MEDIATYPE_Video或者MEDIATYPE_Audio)、subytype(輔助說明類型,輔助說明主類型,具體指明格式類型)和formattype(格式細節(jié)類型,進一步描述格式細節(jié),包括視頻圖像大小、幀率、采樣頻率、量化精度等)。每個部分都由GUID進行標識。 ——CVideoCapture類說明CVideoCapture類中,結合DirectShow開發(fā)包,封裝了系統(tǒng)中對視頻流過濾器圖表的所有操作。類設計如下:class CCaptureVideo {public:int EnumDevices(HWND hList)。 void ConfigCameraPin(HWND hwndParent)。 //配置攝像頭的視頻格式void ConfigCameraFilter(HWND hwndParent)。 //配置攝像頭的圖像參數(shù)HRESULT CaptureImages(CString inFileName)。 //捕獲保存視頻HRESULT PreviewImages(int iDeviceID , HWND hWnd)。 //采集預覽視頻HRESULT Begin(int iDeviceID , HWND hWnd ,CString inFileName)。 //捕獲開始 HRESULT Stop()。 //停止視頻流void FreeMediaType(AM_MEDIA_TYPEamp。 mt)。void GrabOneFrame(BOOL bGrab)。private:HWND m_hWnd。 //視頻顯示窗口的句柄IGraphBuilder *m_pGB。 //濾波器鏈表管理器ICaptureGraphBuilder2 *m_pCapture。 //增強型捕獲濾波器鏈表管理器IBaseFilter *m_pBF。 //捕獲濾波器IMediaControl *m_pMC。 //媒體控制接口IVideoWindow *m_pVW。 //視頻顯示窗口接口IBaseFilter *pMux。 //寫文件濾波器CComPtr ISampleGrabber m_pGrabber。 //ISampleGrabber接口public: CCaptureVideo()。 ~CCaptureVideo()。protected:bool BindFilter(int deviceId,IBaseFilter **pFilter)。 //把指定的設備濾波器捆綁到鏈表中void ResizeVideoWindow()。 //更改視頻顯示窗口HRESULT SetupVideoWindow()。 //設置視頻顯示窗口的特性HRESULT InitCaptureGraphBuilder()。 //創(chuàng)建濾波器鏈表管理器,查詢其各種控制接口}。endif // !defined(AFX_CAPTUREVIDEO_H__ED45681A_5410_40B1_9439_ECB1AD042BC8__INCLUDED_)通過CVideoCapture類的對象,可以實現(xiàn)Filter Graph的創(chuàng)建,捕捉過濾器Grabber Filter的捆綁,過濾器之間的連接,以及Filter Graph數(shù)據(jù)流的管理、控制等操作。為了提高系統(tǒng)的穩(wěn)定性,Windows操作系統(tǒng)對硬件操作進行了割禮,應用程序一般不能直接訪問硬件。而DirectShow Filter工作在用戶模式,硬件工作在內核模式。為了解決協(xié)同工作的問題,DirectShow把硬件設備設計包裝成為Filter,使之能夠工作在用戶模式下,其控制方法與普通Filter一樣,卻在內部能夠完成與硬件驅動程序的交互,使得DirectShow應用程序的開發(fā)人員能夠從為硬件做特殊處理的工作中解脫出來。視頻捕捉過濾器圖表的創(chuàng)建為實現(xiàn)對視頻流的捕獲,首先需要創(chuàng)建一個捕捉過濾器圖表(Capture Filter Graph)。DirectShow提供了一個Capture Graph Builder COM組件來協(xié)助Capture Filter Graph的創(chuàng)建。Capture Graph Builder提供了一個ICaptureGraphBuilder2的接口,該接口用于構建和控制Capture Filter Graph。每個Filter Graph都由一個Filter Graph Manager COM組件來進行管理,該組件暴露了一個IGraphBuilder接口,提供了操作管理Filter Graph的方法。創(chuàng)建過程如下:首先分別定義兩個接口的接口指針:IGraphBuilder *m_pGB。 //濾波器鏈表管理器ICaptureGraphBuilder2 *m_pCapture。 //增強型捕獲濾波器鏈表管理器然后創(chuàng)建接口對象,把上述指針分別指向兩個接口對象并對ICaptureGraphBuilder2接口進行初始化:HRESULT hr 。 //創(chuàng)建IGraphBuilder接口hr=CoCreateInstance(CLSID_FilterGraph,NULL,CLSCTX_INPROC_SERVER,IID_IGraphBuilder,(void**)amp。m_pGB)。 if(FAILED(hr)) return hr 。 //創(chuàng)建ICaptureGraphBuilder2接口 hr=CoCreateInstance(CLSID_CaptureGraphBuilder2,NULL,CLSCTX_INPROC,IID_ICaptureGraphBuilder2,(void**)amp。m_pCapture) 。 if(FAILED(hr)) return hr 。 //初始化濾波器鏈表管理器IGraphBuilder
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1