1 工具下载
测试工具使用ONVIF Device Test Tool,具体下载地址可自行百度,一路默认安装即可。
2 相机配置
我使用的海康球机型号为DS-2DE2402IW-DE3/W,默认是没有打开ONVIF协议的,需要我们在配置中进行配置
进入海康相机设置平台,选择配置-高级配置-勾选启用ONVIF-添加用户-输入登陆用户名和密码-保存
以上即可完成相机ONVIF的相关配置
3 连接设备
接下来可在ONVIF Devive Test Tool测试工具中测试相机了,打开测试软件
首先在NIC中选择与相机同一网段的网卡,点击Discover Devices,即可搜索到在该网段支持ONVIF协议的网络相机
首先在发现设备列表中选择目标相机,在右侧信息中会自动填写相机的参数,然后填写用户名和密码,点击check,即可获得相机的Brand、Model等参数,即第4点钟的信息填写完成,表面设备配置成功
4 视频测试
这一步我们使用测试工具获得相机视频,首先切换到“Debug”选项卡,点击“Media”,“Get” Media URL,"Get" Media Profile,选择“main Stream(Profile_1)”,即可自动获得Video和Audio的相关参数,点击下方Play Video即可打卡相机视频,如图所示
5 PTZ测试
云台测试方法与视频测试方法类似,切换到PTZ选项卡--Get URLs--Get Profile--选择main Stream--PTZ Control
在PTZ Control中用多种控制模式,分别是绝对位置控制、相对位置控制和连续控制,可自行测试看看效果
6 Requests模式
除了使用上述方法来控制云台外,我们还可以使用Requests的方式来发送指令,同时收到Response
如图所示为PTZ测试示例,有几个地方要注意:1 是要把Service和Service Address修改为要测试的模块地址,2 是注意模板中的Porfile Token要修改为自己的Profile,默认的prof0,3 是注意修改设置x y的数值
设置完成后,点击Send Request,当返回200 OK时表明测试成功。
同样的,我们可以使用类似的流程来测试其它功能,比如测试Device Management模块的GetCapabilities功能,发送及接收如图所示
我使用的onvif测试工具的版本是14.06版本
注意点:用户名和密码有的厂家一定要填写后才能check过,有的厂家不需要填写,所以当check不过时,请一定要注意都填写或不填写测试
二、获取摄像机上报的地址集
获取地址集是很有必要的,因为很多厂家五大功能的URL都相同,但是有的不同,这样的测试每个功能都要输入对应的URL,否则会造成send request后,返回错误无法获取报文。
获取这些功能地址是为了之后得到ONVIF上报的其它功能参数来使用。如MediaConf可以获取前端上报的分辨率、码流、帧率等参数。
(1)通过DeviceMngmt来设置获取前端参数一
(1)通过DeviceMngmt来获取参数二
(1)通过MediaConf功能来获取前端上报能力--GetProfiles
(1)通过MediaConf功能来获取前端上报能力-GetStreamUri
得到def_profile6的名字是能出图的,下面返回错误的原因是没有将值修改过来