1:Onvif簡介安防產(chǎn)品的通用標(biāo)準(zhǔn)目前有兩大主流陣營:Onvif以及Psia,從目前廠家的支持?jǐn)?shù)量以及市場占有量來說,Onvif已經(jīng)牢牢占據(jù)了領(lǐng)先地位,且在網(wǎng)絡(luò)視頻監(jiān)控領(lǐng)域,優(yōu)勢地位更明顯。下面摘錄百科的描述來給Onvif做下簡單介紹: 2008年5月,由安訊士聯(lián)合博世及索尼三方宣布將攜手共同成立一個(gè)國際開放型網(wǎng)絡(luò)視頻產(chǎn)品標(biāo)準(zhǔn)網(wǎng)絡(luò)接口開發(fā)論壇,取名為ONVIF(Open Network Video Interface Forum,開放型網(wǎng)絡(luò)視頻接口論壇),并以公開、開放的原則共同制定開放性行業(yè)標(biāo)準(zhǔn)。
ONVIF標(biāo)準(zhǔn)將為網(wǎng)絡(luò)視頻設(shè)備之間的信息交換定義通用協(xié)議,包括裝置搜尋、實(shí)時(shí)視頻、音頻、元數(shù)據(jù)和控制信息等。網(wǎng)絡(luò)視頻產(chǎn)品由此所能提供的多種可能性,使終端用戶,集成商,顧問和生產(chǎn)廠商能夠輕松地從中獲益,并獲得高性價(jià)比、更靈活的解決方案、市場擴(kuò)張的機(jī)會(huì)以及更低的風(fēng)險(xiǎn)。
據(jù)了解,目前有部分企業(yè)和電信運(yùn)營商已經(jīng)制定了與之相關(guān)的業(yè)內(nèi)規(guī)范,也有一些企業(yè)聯(lián)盟提出了一些互聯(lián)互通的企業(yè)標(biāo)準(zhǔn)。ONVIF則是面向全球,出發(fā)點(diǎn)是制訂一個(gè)完全開放的標(biāo)準(zhǔn)。這項(xiàng)標(biāo)準(zhǔn)的主要目標(biāo)在于推動(dòng)不同品牌網(wǎng)絡(luò)視頻設(shè)備之間的整合,協(xié)助制造商,軟件開發(fā)人員以及獨(dú)立軟件廠商確保產(chǎn)品的互聯(lián)互通性,很適合于企業(yè)級(jí)市場。
從ONVIF的官方網(wǎng)站上可了解,從去年年底已經(jīng)正式對(duì)外招收會(huì)員。同時(shí)為適應(yīng)各種不同的參與級(jí)別,ONVIF還提供了不同等級(jí)的會(huì)員資格,可以選擇高級(jí)、中級(jí)或用戶會(huì)員級(jí)別。論壇接納的會(huì)員已有近40家。其中,高級(jí)會(huì)員有12家,除了三家發(fā)起公司外,松下、三星、思科、西門子、TI等著名品牌位列其中,而國內(nèi)的??低?、浙江大華、波??萍己图研沤菀彩荗NVIF論壇的高級(jí)會(huì)員。
推行標(biāo)準(zhǔn)的過程也是凈化市場的重要手段,有利于整合安防市場資源,減少大量重復(fù)開發(fā)的勞動(dòng),和無謂的人力、物力和時(shí)間消耗,提高產(chǎn)品的可靠性。更大的互通和兼容性有利于產(chǎn)業(yè)的集體升級(jí),最終給消費(fèi)者帶來更大的實(shí)惠。相信統(tǒng)一的開放型標(biāo)準(zhǔn)平臺(tái)將極大促進(jìn)安防監(jiān)控業(yè)的健康發(fā)展。
2:開發(fā)框架搭建1:gsoap官網(wǎng)(http://gsoap2./)下載最新版gsoap(本次版本為gsoap_2.8.17)并解壓。 2:新建一個(gè)文件夾(OnvifFramework) 將解壓的gsoap_2.8.17文件拷貝至OnvifFramework目錄下 將gsoap_2.8.17\gsoap-2.8\gsoap 路徑下的typemap.dat以及gsoap_2.8.17\gsoap-2.8\gsoap\bin\win32 路徑下的wsdl2h.exe soapcpp2.exe也拷貝至該目錄下。 3: Onvif官網(wǎng)(http://www./Documents/Specifications.aspx)頁面里ONVIF WSDL and XML Schemas Specifications找到各wsdl(18個(gè)左右)并下載下來 (右鍵另存為即可),放入GenerateSource文件夾中。 4:生成onvif.h 相關(guān)的依賴文件,并且對(duì)文件路徑有如下要求: OnvifFramework ----level1 ----level2 ----GenerateSource ----typemap.dat ----wsdl2h.exe ----soapcpp2.exe ----remotediscovery.wsdl ----devicemgmt.wsdl ----analytics.wsdl ----analyticsdevice.wsdl ----media.wsdl ----deviceio.wsdl ----display.wsdl ----event.wsdl ----imaging.wsdl ----recording.wsdl ----replay.wsdl ----search.wsdl ----receiver.wsdl ----ptz.wsdl
----ver10 ----device ----wsdl ----devicemgmt.wsdl ----media ----wsdl ----media.wsdl ----schema ----onvif.xsd
----ver10 ----schema ----onvif.xsd 管理員權(quán)限打開CMD,切換至GenerateSource目錄下,將如下指令貼到CMD窗口中回車運(yùn)行即可生成onvif.h文件: 結(jié)果信息如下圖所示:
注:生成的時(shí)候可能會(huì)出現(xiàn)如下錯(cuò)誤: wsa5.h(290): **ERROR**: remote method nameclash: struct/class 'SOAP_ENV__Fault' already declared at line 274 解決辦法如下: 打開gsoap_2.8.17\gsoap-2.8\gsoap\import 路徑下的wsa5.h, 將277行的SOAP_ENV__Fault結(jié)構(gòu)體注釋掉(改成其他名字亦可) 將如下指令貼到CMD窗口中回車運(yùn)行即可: soapcpp2 -2 -c onvif.h -x -I ..\..\..\gsoap_2.8.17\gsoap-2.8\gsoap\import -I ..\..\..\gsoap_2.8.17\gsoap-2.8\gsoap 看到下圖中的Compilation successful即可: 6:生成文件代碼文件如下: 最后做如下修改 1.后綴為nsmap的命名空間文件內(nèi)容都一樣,保留一個(gè)即可,后綴改為.h文件(wsdd.nsmap更名為wsdd.h),需要的時(shí)候包含此文件即可 最終的文件如下: 至此Onvif的開發(fā)環(huán)境框架已經(jīng)完成,客戶端的開發(fā)的話,使用soapClient.c文件;服務(wù)端開發(fā)的話,使用soapServer.c即可。 以上所有下載及生成文件均打包上傳了,可以點(diǎn)擊我的資源下載,直接將FrameworkSource中的代碼文件拷貝出來即可進(jìn)行onvif的后續(xù)開發(fā)了。 |
|
|