我公司为其客户提供安全和监控服务,我被要求就如何使用onvif api进行研发。我访问了他们的operations页面和一些操作的相关wsdl定义。到目前为止,我的任务表明onvif为安全设备创建了一套标准,并且符合设备实现了onvif api and specification页面上列出的服务。我认为,实现它的方法是通过使用onvif站点的wsdl定义创建Web服务客户端存根,并使用设备的ip作为端点来获取其功能。我的假设是否正确?此外,如果有人可以给我推荐一些初读,那么我会非常感激。
答案 0 :(得分:8)
对于ONVIF客户端(NVC - 网络视频客户端),您可以参考onvifdm。 OnvifDM是NVC之一。
它有许多基于ONVIF规范的功能:
目前,ONVIF最新版本为2.2 但在市场上,大多数符合ONVIF标准的设备都支持v1.02和v2.0(v2.1?)。
NVC(与onvifdm一样)需要NVT(网络视频发送器)进行互操作。
NVT将是IP摄像机或NVR(传统或混合),它具有各种功能和功能 ONVIF标准包括许多强制项目和一些可选项目 因此,对于互操作,您必须检查ONVIF版本和NVC / NVT功能。
如果您注册为ONVIF会员,您可以获得ONVIF一致性工具(最新版本1.02)。
一致性工具用于NVT兼容性检查,您可以将其称为客户端
如果任何NVT通过ONVIF一致性工具的测试过程,它可以是一致的产品。
您可以在ONVIF's website中找到符合ONVIF标准的产品。
你可以在onvifdm中找到一个开源库,代码基于.NET 有关详细信息,请查看http://en.synesis.ru/en/surveillance/onvifdm/。
答案 1 :(得分:1)
我开发了一个开放的C ++解决方案ONVIF NVC(网络视频客户端)和PVR(个人视频录像机)。
它可以与监控摄像头一起使用。但是你需要在这个解决方案中设置摄像机的rtsp地址。
在GitHub上可用: https://github.com/derzu/ONVIF-PVR