Conexant Bt878驱动及视频软件开发
目錄
- 1.前言
- 2.驅(qū)動(dòng)開發(fā)
- 3.視頻軟件開發(fā)
- 3.1 DX SDK版本選擇
- 3.2 directshow開發(fā)
- 4.寄存器配置
- 5.參考資料
1.前言
本文是對(duì)基于Conexant Bt878進(jìn)行的驅(qū)動(dòng)開發(fā)和軟件開發(fā)進(jìn)行的整理論述,驅(qū)動(dòng)是基于WDM進(jìn)行的開發(fā),視頻軟件是基于DX8 SDK和DX9 SDK的directshow程序進(jìn)行的開發(fā),附加寄存器控制功能是通過(guò)windriver進(jìn)行的開發(fā)
注:如果希望從0開始進(jìn)行開發(fā),請(qǐng)借鑒windriver或WDM的參考手冊(cè)進(jìn)行驅(qū)動(dòng)開發(fā),借鑒DX SDK手冊(cè)進(jìn)行視頻軟件開發(fā)
注2:通過(guò)本文操作可以獲取驅(qū)動(dòng)文件、視頻軟件及寄存器操作功能程序
2.驅(qū)動(dòng)開發(fā)
重要網(wǎng)址:WDM Video Capture Driver
本文使用的驅(qū)動(dòng)開發(fā)方式實(shí)際上是屬于二次開發(fā),具體方法如下,
(1)找到一份驅(qū)動(dòng),本文用到的是天敏SDK2000的驅(qū)動(dòng)文件,安裝后通過(guò)板卡配套的視頻軟件驗(yàn)證視頻可以正常采集,保障驅(qū)動(dòng)及安裝過(guò)程正確
(2)由于公司出品的驅(qū)動(dòng)及視頻軟件都有雙向驗(yàn)證過(guò)程,更換板卡后會(huì)阻斷程序運(yùn)行,因此通過(guò)WDM Video Capture Driver->Download->btspy2.0.0.zip,通過(guò)btspy軟件監(jiān)測(cè)目前正常驅(qū)動(dòng)下各通道的通道數(shù)、GPOE值、GPDATA值等信息,再通過(guò)btwdmdrvinstaller5.3.8.zip進(jìn)行安裝,將btspy產(chǎn)生的配置文件配置到安裝過(guò)程中,安裝后即可
注:如果安裝失敗或者希望獲得獨(dú)立安裝文件,可以通過(guò)wdminstall-byhand5.3.8.zip文件進(jìn)行手動(dòng)配置,具體配置方法在wdminstall-byhand5.3.8.zip中有敘述,這個(gè)附加樣例中的重要代碼
3.視頻軟件開發(fā)
3.1 DX SDK版本選擇
在實(shí)驗(yàn)過(guò)程中,本文同時(shí)進(jìn)行了DX8和DX9 SDK的開發(fā)使用,在使用DX8的過(guò)程中在VC6的環(huán)境下開發(fā)沒(méi)有問(wèn)題,當(dāng)轉(zhuǎn)為vs2010的程序過(guò)程中發(fā)生了很多的報(bào)錯(cuò),一一改正后仍出現(xiàn)“T”字符未定義等報(bào)錯(cuò),未能解決,因此后續(xù)使用DX9進(jìn)行的軟件開發(fā)
注:在編譯過(guò)程中需要使用DX9 SDK中的BaseClasses的編譯,有debug、release等4個(gè)版本,需要根據(jù)你想使用的開發(fā)環(huán)境進(jìn)行變異,如視頻工程是使用vs2010,那么BaseClasses工程也使用vs2010進(jìn)行編譯,同時(shí)兩個(gè)工程的debug及release版本需要對(duì)應(yīng),否則出現(xiàn)類型無(wú)法解析等問(wèn)題
3.2 directshow開發(fā)
先使用DX9 SDK中的graphedit進(jìn)行預(yù)先測(cè)試驅(qū)動(dòng)是否正常,包括通道切換等功能的測(cè)試,使用十字通道、解析器、渲染器進(jìn)行連接,點(diǎn)擊運(yùn)行即可看到視頻界面
確認(rèn)驅(qū)動(dòng)安裝正確后,使用DX9 SDK中的directshow進(jìn)行視頻軟件開發(fā),使用VC6可以直接編譯使用,在開發(fā)過(guò)程中,便于調(diào)試,本文使用的是vs2010進(jìn)行的開發(fā),在修改過(guò)程中,需要配置4個(gè)部分
(1)庫(kù)文件添加,主要使用BaseClasses中得工程通過(guò)vs2010(對(duì)應(yīng)版本的環(huán)境)編譯生成的lib文件
(2)包含目錄添加,主要使用include、BaseClasses、Common三個(gè)文件目錄
(3)屏蔽C4430錯(cuò)誤,VC6中默認(rèn)可以不設(shè)置參數(shù)類型,在vs2010中報(bào)錯(cuò)需要更改,可以在配置->C+±>高級(jí)中設(shè)置屏蔽4430錯(cuò)誤
(4)修改原始庫(kù)文件,在原始庫(kù)文件中,有一部分和C++語(yǔ)法相沖突,通過(guò)以下鏈接進(jìn)行修改
DirectShow 配置環(huán)境
4.寄存器配置
寄存器設(shè)置功能通過(guò)windriver功能進(jìn)行實(shí)現(xiàn),通過(guò)windriver配置器生成相應(yīng)板卡的驅(qū)動(dòng)文件,通過(guò)引入wdapi1026.lib和對(duì)應(yīng)生成的庫(kù)文件,獲取hDev設(shè)備號(hào)后,將設(shè)置寄存器的函數(shù)封裝到需要更改的位置,偏置通過(guò)對(duì)應(yīng)的板卡手冊(cè)進(jìn)行配置,調(diào)試過(guò)程可以通過(guò)windriver寄存器查看器和調(diào)試的方式進(jìn)行
5.參考資料
1.WDM Video Capture Driver
2.DirectShow 配置環(huán)境
總結(jié)
以上是生活随笔為你收集整理的Conexant Bt878驱动及视频软件开发的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Android手机应用第三方模拟器使用、
- 下一篇: 基于数据统计的随机组建试卷的算法研究