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

正文內(nèi)容

畢業(yè)設(shè)計(jì)---基于vc的視頻采集系統(tǒng)的開(kāi)發(fā)(已改無(wú)錯(cuò)字)

2023-02-12 21:29:56 本頁(yè)面
  

【正文】 zeof(m_Parms))來(lái)完成。 設(shè)置捕獲窗口的相關(guān)參數(shù) 通過(guò)宏 capCaptureSetSetup(hWndCap,amp。m_Parms,sizeof(m_Parms))來(lái)完成。 連接捕獲窗口與視頻捕獲卡 通過(guò)宏 capDriveConnect(hWndCap,0)來(lái)完成。 獲取采集設(shè)備的功能和狀態(tài) 通過(guò)宏 capDriverGetCaps(hWndCap,amp。m_CapDrvCap, sizeof(CAPDRIVERCAPS))來(lái)獲取 視 頻 設(shè) 備 的 能 力 , 通 過(guò) 宏capGetStatus(hWndCap,amp。m_CapStatus,sizeof(m_CapStatus)) 來(lái)獲取視頻設(shè)備的狀態(tài)。 設(shè)置捕獲窗口顯示模式 視頻顯示有 Overlay(疊加 )和 Preview(預(yù)覽 )兩種模式。在疊加模式下,捕獲視頻數(shù)據(jù)布展系統(tǒng)資源,顯示速度快,視頻采集格式為 YUV 格式,可通過(guò)capOverlay(hWndCap,TRUE)來(lái)設(shè)置;預(yù)覽模式 下要占用系統(tǒng)資源,視頻由系統(tǒng)調(diào)用GDI 函數(shù)在捕獲窗顯示,顯示速度慢,它支持 RGB 視頻格式。 捕獲圖像到緩存或文件并作相應(yīng)處理 若要對(duì)采集數(shù)據(jù)進(jìn)行實(shí)時(shí)處理,則應(yīng)利用回調(diào)機(jī)制,由 capSetCallbackOnFrame( hWndCap, FrameCallbackProc) 完 成 單 幀 視 頻 采 集 ; 由畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 14 capSetCallbackOnVideoStream(hWndCap, VideoCallbackProc)完成視頻流采集。如果要保存采集數(shù)據(jù),則可調(diào)用 capCaptureSequence( hWnd);要指 定文件名,可調(diào)用capFileSetCap ture(hwnd, Filename)。 終止視頻捕獲 斷開(kāi)與視頻采集設(shè)備的連接 調(diào)用 capCatureStop(hWndCap)停止采集,調(diào)用 capDriverDisconnect(hWndCap), 斷開(kāi)視頻窗口與捕獲驅(qū)動(dòng)程序的連接。 3 視頻編輯和播放 利用 VFW,不僅可以實(shí)現(xiàn)視頻流的實(shí)時(shí)采集,還提供了編輯和播放功能,主要通過(guò) AVIFILE、 ICM、 ACM、 MCIWnd 等組件之間的協(xié)作來(lái)完成。 1) AVIFileInit()。//初 始化 。 2) AVIFileOpen()。 //打開(kāi)一個(gè) AVI 文件并獲文件的句柄 。 3) AVIFileInfo()。 //獲取文件的相關(guān)信息,如圖像的 Width 和 Height 等 。 4) AVIFileGetStream()。 //建立一個(gè)指向需要訪問(wèn)的數(shù)據(jù)流的指針 。 5) AVIStreamInfo()。 //獲取存儲(chǔ)數(shù)據(jù)流信息的 AVISTREAMINFO 結(jié)構(gòu) 。 6) AVIStreamRead()。 //讀取數(shù)據(jù)流中的原始數(shù)據(jù) , 對(duì) AVI 文件進(jìn)行所需的編輯處理; 7) AVIStreamRelease()。 //釋放指向視頻流的指針 。 8) AVIFileRelease()。AVIFileExit()。 //釋放 AVI 文件。 若數(shù)據(jù)是壓縮過(guò)的,則用 AVIStreamGetFrameOpen(),AVIStreamGetFrame()和AVIStreamGetFrameClose()來(lái)操作,可以完成對(duì)視頻流的逐幀分解。 視頻播放 對(duì)于實(shí)現(xiàn)視頻流的播放, VFW 提供了 MCIWnd 窗口類 [4],主要用于創(chuàng)建視頻播放區(qū),控制并修改 MCI 窗口當(dāng)前加載媒體的屬性。一個(gè)由函數(shù)、消息和宏組成的庫(kù) 與 MCIWnd 相關(guān)聯(lián),通過(guò)它們可以進(jìn)行 AVI 文件操作,很方便地使應(yīng)用程序完成視頻播放功能。 1)MCIWndCreate()。 //注冊(cè) MCIWnd 窗口類,創(chuàng)建 MCIWnd 窗口,并指定窗口風(fēng)格; 2)AVIFileInit()。 //初始化; 3) AVIFileOpen()。 //打開(kāi) AVI 文件; 4) AVIFileGetStream()。 //獲得視頻流; 5)運(yùn)用相關(guān)函數(shù)進(jìn)行各種播放任務(wù): MCIWndPlay() 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 15 模塊設(shè)計(jì) 系統(tǒng) 模塊設(shè)計(jì) 對(duì)本系統(tǒng)的 各個(gè)子模塊進(jìn)行了系統(tǒng)分析和 VC++編程 設(shè)計(jì)之后,本章將主要討論該系統(tǒng)所實(shí)現(xiàn)的各部分功能 : ( 1)視頻主界面 圖 421 運(yùn)行 文件后主界面啟動(dòng),可以根據(jù)客戶的不同需要采取不同的操作模式,實(shí)現(xiàn)系統(tǒng)的應(yīng)用。 ( 2)捕捉視頻及圖像界面 圖 422 利用高清外置 對(duì)視頻信息進(jìn)行采集捕捉。 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 16 ( 3)文件模塊 圖 423 內(nèi)容包括打開(kāi),設(shè)置,退出。打開(kāi)用于打開(kāi)攝像文件以及音頻等文件,用于視頻采集過(guò)程的編輯;設(shè)置主要是對(duì)系統(tǒng)的參數(shù)進(jìn)行調(diào)整以使系統(tǒng)更加的完善;退出即退出系統(tǒng)。 ( 4)播放模塊 圖 424 內(nèi)容主要包括開(kāi)始、停止、錄像、抓圖、全屏、前端顯示等內(nèi)容,并且為各個(gè)功能設(shè)置了英文首字標(biāo)示,具體內(nèi)容如圖 圖 424 所示 。 ( 5)設(shè)置模塊 圖 425 此版塊主要對(duì)系統(tǒng)的視頻設(shè)備、視頻格式、音頻設(shè)備、音頻格式、音頻輸入、混合字幕等內(nèi)容進(jìn)行設(shè)置,具體的內(nèi)容在下面將具體的介紹 ,設(shè)置界面的如圖 圖 425 所示: ( 6)視頻屬性設(shè)置界面 圖 426 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 17 此項(xiàng)目主要是對(duì)視頻采集和保存的各項(xiàng)參數(shù)進(jìn)行設(shè)置以保證有清晰完整的畫(huà)面顯示,具體的界面內(nèi)容如圖 圖 426 所示: ( 6)音頻屬性設(shè)置界面 圖 427 此項(xiàng)目主要是對(duì)視頻采集和保存的各項(xiàng)參數(shù)進(jìn)行設(shè)置以保證有清晰完整的音頻顯示效果,具體的界面內(nèi)容如圖 圖 427 所示: ( 6)混合字幕屬性設(shè)置界面 圖 428 此項(xiàng)目主要是對(duì)采集的視頻的主界面的字幕情況進(jìn)行設(shè)置,以保證有較為灣內(nèi)的畫(huà)面,具體的界面內(nèi)容如圖 圖 428 所示: ( 7)字幕顯示情況如下圖所示 圖 429 ( 8) 抓圖保存界面 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 18 圖 4210 對(duì)于抓圖的格式默認(rèn)格式選擇了 bmp 格式,另外也可以現(xiàn)在所有格式按照自己的需要設(shè)置文件的格式,只需要在文件名內(nèi)加上后綴名酒可以啦,例 如: ( 8)錄像保存界面 圖 4211 對(duì)于錄像的格式默認(rèn)格式選擇了 avi 格式,另外也可以現(xiàn)在所有格式按照自己的需要設(shè)置文件的格式,只需要在文件名內(nèi)加上后綴名就可以啦,例如: ( 9)便捷窗口 圖 4212 在主界面的左下角設(shè)置了,開(kāi)始暫停、停止、全屏等按鈕,可以方便的實(shí)現(xiàn)各自的快捷功能,具體如圖 圖 4212 所示: 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 19 5 編碼、實(shí)現(xiàn)與測(cè)試 系統(tǒng)編碼設(shè)計(jì) ( 1) 創(chuàng)建視頻窗口 視頻窗口與視頻采集的驅(qū)動(dòng)程序關(guān)聯(lián),它接收各種視頻采集相關(guān)的消息,并根據(jù)這些消息控制 視頻采集設(shè)備的各種操作。后續(xù)的所有視頻采集消息全部發(fā)送給視頻采集窗口。要?jiǎng)?chuàng)建視頻采集窗口可以通過(guò)調(diào)用 capCreateCaptureWindow函數(shù)實(shí)現(xiàn)。 我們可以通過(guò)在 MFC的 View類中增加一個(gè)窗口句柄成員變量來(lái)保存capCreateCaptureWindow 函數(shù)返回的采集窗口句柄,然后在 View類的 OnCreate函數(shù)中添加以下語(yǔ)句。 m_caphwnd = capCreateCaptureWindow(_T(My Capture Window),WS_CHILD | WS_VISIBLE,0,0,500,600,thisGetSafeHwnd(),1)。 ( 2) 連接采集驅(qū)動(dòng) 創(chuàng)建采集窗口后,需要將采集窗口與采集驅(qū)動(dòng)程序關(guān)聯(lián)起來(lái)。 為了驗(yàn)證當(dāng)前 PC機(jī)上是否安裝的視頻采集設(shè)備,可以在關(guān)聯(lián)驅(qū)動(dòng)程序之前調(diào)用 capGetDriverDescription 函數(shù)枚舉一下系統(tǒng)中的采集驅(qū)動(dòng),代碼如下: int i = 0。 wchar_t sdriver[50]。//驅(qū)動(dòng)信息 wchar_t sver[50]。//版本信息 CString m_driverInfo()。 for ( i = 0。 i 10。 i++ ) { if ( capGetDriverDescription(i,sdriver,50,sver,50) ) { m_driverInfo += sdriver。 m_driverInfo += \n。 m_driverInfo += sver。 m_driverInfo += \n。 memset(sdriver,0,50 * sizeof(wchar_t))。 memset(sver,0,50 * sizeof(wchar_t))。 } 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 20 } if ( !() ) { //顯示驅(qū)動(dòng)程序信息 AfxMessageBox(m_driverInfo)。 } else { AfxMessageBox(_T(No Capture!))。 } 確認(rèn)當(dāng)前系統(tǒng)中安裝有采集設(shè)備后,可以使用 capDriverConnect 宏向視頻采集窗口發(fā)送連接采集驅(qū)動(dòng)的消息,代碼如下: //關(guān)聯(lián)第一個(gè)驅(qū)動(dòng) capDriverConnect(m_caphwnd,0)。 ( 3)視頻采集攝像頭: (如下圖所示,品牌 奧家; 像素 800萬(wàn);免驅(qū)動(dòng)) ( 4) 設(shè)置采集參數(shù) 在視頻采集之前,可以通過(guò) capCaptureGetSetup 宏取得視頻采集參數(shù),然后通過(guò) capCaptureSetSetup 宏將新設(shè)定的采集參數(shù)傳遞到采集窗口,由采集窗口控制采集驅(qū)動(dòng)程序。代碼如下: CAPTUREPARMS s。 capCaptureGetSetup(m_caphwnd,amp。s,sizeof(CAPTUREPARMS))。//取得采集參數(shù) = 33333。//采集一幀花費(fèi) 1/30秒 = FALSE。//壓下鼠標(biāo)左鍵不終止采集 = FALSE。//壓下鼠標(biāo)右鍵不終止采集 = TRUE。//c 采集音頻 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 21 = TRUE。//使用一個(gè)獨(dú)立的線程來(lái)采集視頻,不使用 View 窗口線程 capCaptureSetSetup(m_caphwnd,amp。s,sizeof(CAPTUREPARMS))。//設(shè)定采集參數(shù) 還可以通過(guò) capGetVideoFormat宏取得視頻格式,然后通過(guò)capSetVideoFormat設(shè)定視頻格式。參考代碼如下: LPBITMAPINFO bitmapinfo。 DWORD bit_info_size = 0。 //取得視頻格式信息的大小 bit_info_size = capGetVideoFormatSize(m_caphwnd)。 bitmapinfo = (LPBITMAPINFO)GlobalAlloc(GHND,bit_info_siz
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1