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

正文內(nèi)容

畢業(yè)設(shè)計(jì)---基于vc++的視頻采集系統(tǒng)的開發(fā)-文庫吧

2024-12-28 21:29 本頁面


【正文】 備驅(qū)動(dòng)程序、視頻壓縮程序等。 VFW主要由以下 6個(gè)模塊組成: ● :包含執(zhí)行視頻捕獲的函數(shù),它給 AVI 文件的 I/O 處理和視頻、音頻設(shè)備驅(qū)動(dòng)程序提供一個(gè)高級接口; ● :包含一套特殊的 DrawDib 函數(shù),用來處理屏幕上的視頻操作; ● :包括對 VFW的 MCI命令解釋器的驅(qū)動(dòng)程序; ● :包含由標(biāo)準(zhǔn)多媒體 I/O( mmio)函數(shù)提供的更高的命令,用來訪問 .AVI文件; ● 壓縮管理器( ICM):用于管理的視頻壓縮 /解壓縮的編譯碼器( Codec); ● 音頻壓縮管理器 ACM:提供與 ICM相似的服務(wù),適用于波形音頻。 AVICap在顯示視頻時(shí)提供的兩種模式: ( A)預(yù)覽( Preview)模式:該模式使用 CPU 資源,視頻幀先從捕獲硬件傳到系統(tǒng)內(nèi)存,接著采用 GDI 函數(shù)在捕獲窗中顯示。在物理上,這種模式需要通過 VGA卡在監(jiān)視器上顯示。 ( B)疊加( Overlay)模式:該模式使用硬件疊加進(jìn)行視頻顯示,疊加視頻的顯示不經(jīng)過 VGA 卡,疊加視頻的硬件將 VGA 的輸出信號與其自身的輸出信號合并,畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 4 形 成組合信號顯示在計(jì)算機(jī)的監(jiān)視器上。只有部分視頻捕獲卡才具有視頻疊加能力。 Visual C++ 在支持 VFW 方面提供有 、 、 類似的庫。特別是它提供了功能強(qiáng)大、簡單易行、類似于 MCIWnd的窗口類 AVICap。AVICap 為應(yīng)用程序提供了一個(gè)簡單的、基于消息的接口,使之能訪問視頻和波形音頻硬件,并能在將視頻流捕獲到硬盤上的過程中進(jìn)行控制。 Microsoft Visual C++ 簡介 Microsoft Visual C++,(簡稱 Visual C++、 MSVC、 VC++或 VC) 微軟公司 的 C++開發(fā)工具,具有 集成開發(fā)環(huán)境 ,可提供編輯 C語言 , C++以及 C++/CLI 等 編程語言 。VC++整合了便利的除錯(cuò)工具,特別是整合了微軟 視窗 程式設(shè)計(jì)( Windows API)、 三維動(dòng)畫 DirectX API, Microsoft .NET框架。目前最新的版本是 Microsoft Visual C++ 2022。 Microsoft Visual C++,(簡稱 Visual C++、 MSVC、 VC++或 VC) 微軟公司 的 C++開發(fā)工具,具有 集成開發(fā)環(huán)境 ,可提供編輯 C 語言 , C++以及 C++/CLI 等 編程語言 。 VC++整合了便利的除錯(cuò)工具,特別是整合了微軟 視窗 程式設(shè)計(jì)( Windows API)、 三維動(dòng)畫 DirectX API, Microsoft .NET 框架。目前最新的版本是 Microsoft Visual C++ 2022。 Visual C++以擁有 “ 語法高亮 ” , IntelliSense(自動(dòng)編譯功能 )以及高級除錯(cuò)功能而著稱。比如,它允許用戶進(jìn)行遠(yuǎn)程調(diào)試,單步執(zhí)行等。還有允許用戶在調(diào)試期間重新編譯被修改的代碼,而不必重新啟動(dòng)正在調(diào)試的程序。其編譯及建置系統(tǒng)以預(yù)編譯頭文件、最小重建功能及累加連結(jié)著稱。這些特征明顯縮短程式編輯、編譯及連結(jié)的時(shí)間花費(fèi),在大型軟件計(jì)劃上尤其顯著。 Microsoft Visual C++ ,集成了 ,于 1998 發(fā)行。發(fā)行至今一直被廣泛地用于大大小小的項(xiàng)目開發(fā)。但是,這個(gè)版本在 WindowsXP 下運(yùn)行會出現(xiàn)問題,尤其是在調(diào)試模式的情況下(例如:靜態(tài)變量的值并不會顯 示)。 這個(gè)調(diào)試問題可以通過打一個(gè)叫 “Visual C++ Pack” 的補(bǔ)丁來解決。 C++的設(shè)計(jì)原則 ? C++設(shè)計(jì)成靜態(tài)類型、和 C同樣高效且可移植的多用途程序設(shè)計(jì)語言。 ? C++設(shè)計(jì)成直接的和廣泛的支援多種程序設(shè)計(jì)風(fēng)格(程序化程序設(shè)計(jì)、資料抽象化、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì))。 ? C++設(shè)計(jì)成給程序設(shè)計(jì)者更多的選擇,即使可能導(dǎo)致程序設(shè)計(jì)者選擇錯(cuò)誤。 ? C++設(shè)計(jì)成盡可能與 C兼容,籍此提供一個(gè)從 C到 C++的平滑過渡。 ? C++避免平臺限定或沒有普遍用途的特性。 ? C++不使用會帶來額外開銷的特性。 ? C++設(shè)計(jì)成無需復(fù)雜的程序設(shè)計(jì)環(huán)境。 出于保證語言的簡潔和運(yùn)行高效等方面的考慮, C++的很多特性都是以庫(如畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 5 STL)或其他的形式提供的,而沒有直接添加到語言本身里。關(guān)于此類話題, C++之父的《 C++語言的設(shè)計(jì)和演化》 里做了詳盡的陳述。 2 系統(tǒng)分析 可行性分析 一、經(jīng)濟(jì)的可行性 主要從對項(xiàng)目的經(jīng)濟(jì)上進(jìn)行分析評價(jià),一方面是支出的費(fèi)用,包括設(shè)備購置費(fèi)、管理和維護(hù)費(fèi)用、人員工資和培訓(xùn)費(fèi)等,另一個(gè)是取得的收益。這是個(gè)超小型的管理系統(tǒng),從投入的人力, 財(cái)力與物力來講是非常之小的,只要一臺電腦,一 部USB 接口高清攝像頭 ,這個(gè)系統(tǒng)就可以搞起來,考慮到學(xué)校里有電腦,現(xiàn)只要購置一 部 USB 接口高清攝像頭 就可以了。從節(jié)省人力方面,可以讓管理人員從繁與復(fù)雜的工作中解脫出來,做更多的工作。 二、 技術(shù)上的可行性 VFW(Video for Windows)是 Microsoft 推出的關(guān)于數(shù)字視頻的一個(gè)軟件開發(fā)包 , 在 VC++開發(fā)環(huán)境中調(diào)用 VFW 和使用其它開發(fā)包沒有什么不同,只是需要將 文件加入工程中 。 VFW 為開發(fā)人員提供了很多的接口,開發(fā)人員可以使 用這些接口在視頻采集過程中抓取圖片、在采集窗口中預(yù)覽采集的視頻、設(shè)置采集參數(shù)及顯示視頻源、視頻格式、壓縮格式的設(shè)置對話框。 開發(fā) VFW視頻采集軟件,一般的開發(fā)步驟如下: ? 創(chuàng)建視頻采集窗口 ? 關(guān)聯(lián)采集窗口與采集驅(qū)動(dòng)程序 ? 設(shè)置采集參數(shù) ? 響應(yīng)用戶的操作,開始 /結(jié)束視頻采集 三、總結(jié) 通過以上兩點(diǎn)的分析,編寫或開發(fā)這個(gè) 視頻采集 系統(tǒng)是可行的,只要這個(gè)系統(tǒng)能利用攝像頭 實(shí)現(xiàn)對 視頻的采集、抓圖功能以及部分參數(shù)調(diào)整 就可以了。 從整體 角度來講,此系統(tǒng)的開發(fā)時(shí)完全可以實(shí)現(xiàn)的。 本論文的關(guān)鍵問題是通過 調(diào)用程序自定義的回調(diào)函數(shù)來實(shí)現(xiàn)程序畫面顯示一個(gè)實(shí)時(shí)的視頻信號并具有拍攝,保存和查看的功能。難點(diǎn)包括讓程序運(yùn)行的更加穩(wěn)定,程序畫面更加個(gè)性化和美觀化,讓使用者有更多的視頻參數(shù)選擇和具有一個(gè)較好的畫面效果。 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 6 系統(tǒng)開發(fā)流程分析 初始化操作 創(chuàng)建捕獲窗口 函數(shù) capCreateCaptureWindow() 返回視頻捕獲窗口,它是所有捕獲工作及設(shè)置的基礎(chǔ),其主要功能包括: ① 動(dòng)態(tài)地同視頻和音頻輸入器連接或斷開; ② 設(shè)置視 頻捕獲速率; ③ 提供視頻源、視頻格式以及是否采用視頻壓縮的對話框; ④ 設(shè)置視頻采集的顯示模式為 Overlay 或?yàn)?Preview。 ⑤ 實(shí)時(shí)獲取每一幀視頻數(shù)據(jù); ⑥ 將一視頻流和音頻流捕獲并保存到一個(gè) AVI 文件中; ⑦ 捕獲某一幀數(shù)字視頻數(shù)據(jù),并將單幀圖像以 DIB 格式保存; ⑧ 指定捕獲數(shù)據(jù)的文件名,并能將捕獲的內(nèi)容拷貝到另一文件。 HWND m_hCapWnd = capCreateCaptureWindow(Capture,WS_POPUP,0,0,1,1,0,0)。 關(guān)聯(lián)窗體到 本程序?qū)嵗? capSetUserData(m_hCapWnd, this)。 m_hCapWnd 窗口句柄相當(dāng)于 vfw 捕獲活動(dòng)的基礎(chǔ),他就代表了這個(gè)捕獲。 登記回調(diào)函數(shù) 登記回調(diào)函數(shù)用來實(shí)現(xiàn)用戶的一些特殊需要。在以一些實(shí)時(shí)監(jiān)控系統(tǒng)或視頻會議系統(tǒng)中,需要將數(shù)據(jù)流在寫入磁盤以前就必須加以處理,達(dá)到實(shí)時(shí)功效。應(yīng)用程序可用捕獲窗來登記回調(diào)函數(shù),以便及時(shí)處理以下情況:捕獲窗狀態(tài)改變、出錯(cuò)、使用視頻或音頻緩存、放棄控制權(quán)等,相應(yīng)的回調(diào)函數(shù)分別為 capStatusCallback(), capErrorCallback(), capVideoStreamCallback(), capWaveStreamCallback(),capYieldCallback()。 例如,設(shè)置回調(diào)函數(shù): capSetCallbackOnVideoStream(m_hCapWnd, OnCaptureVideo)。 獲得安裝的捕獲驅(qū)動(dòng)程序的名稱和版本 capGetDriverDescription(iIndex, szDevName, MAX_PATH, szDevVersion, MAX_PATH)。 szDevName 和 szDevVersion 返回當(dāng)前第 iIndex 個(gè)設(shè)備的設(shè)備名稱和版本。 連接捕獲窗口與視頻捕獲卡 capDriverConnect(m_hCapWnd, iIndex)。 獲取捕獲窗口的缺省參數(shù) 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 7 CAPTUREPARMS CapParms = {0}。 capCaptureGetSetup(m_hCapWnd, amp。CapParms, sizeof(CapParms))。 修改剛剛獲得的參數(shù) = FALSE。 // 退出鼠標(biāo)設(shè)置 = FALSE。 // ... = TRUE。 // 使用背景作業(yè) = FALSE。 // 不獲取聲音 = 50。 // 允許遺失的百分比 設(shè)置捕獲窗口的相關(guān)參數(shù) capCaptureSetSetup(m_hCapWnd, amp。CapParms, sizeof(CapParms))。 獲得視頻的格式、大小 capGetVideoFormat(m_hCapWnd, amp。m_BmpInfo, sizeof(m_BmpInfo))。 更改視頻的尺寸 = 176。 = 144。 1設(shè)置新的視頻屬性 capSetVideoFormat(m_hCapWnd, amp。m_BmpInfo, sizeof(m_BmpInfo)) (不更改視頻尺寸或者設(shè)置屬性不正確運(yùn)行時(shí)會 出錯(cuò)?。? 開始捕獲(不使用磁盤存儲的捕獲) 1初始化 Dib HDRAWDIB m_hDib = ::DrawDibOpen()。 1開始繪制 Dib ::DrawDibBegin(m_hDib, m_hDC, 1, // don39。t stretch 1, // don39。t stretch amp。, IMAGE_WIDTH, // width of image IMAGE_HEIGHT, // height of image 0)。 1開始捕獲 capCaptureSequenceNoFile(m_hCapWnd)。 結(jié)束退出 1結(jié)束繪制 Dib,關(guān)閉 Dib: 畢業(yè)設(shè)計(jì)論文 __基于 VC++的視頻采集系統(tǒng) 8 ::DrawDibEnd(m_hDib)。 ::DrawDibClose(m_hDib)。 清除采集過程 1停 止采集過程 capCaptureAbort(m
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1