本团队开发出ONVIF协议支持的方案。
下面是方案简介:
特点
1. 可移植性
目前版本可以很方便地移植到各种版本的linux系统(下一个版本会考虑其他操作系统),所以对于不同的具体产品,移植起来非常简单,只要把和具体产品相关的部分重新实现即可。另外软件对硬件透明,不同的硬件平台,只需重新编译一下。
2. 模块化
本软件模块化设计,可以安装不同的模块来实现不同的动能的支持。ONVIF可分为,基本功能支持,和profile-S的支持。使用者很容易为产品添加对不同ONVIF功能的支持。
3. 易升级
本软件在设计时,把与平台相关,产品相关的代码和通用代码做了很好的隔离,在产品升级,需要更改设置时,能快速地完成。
特性
当前版本实现了onvif的基本功能,目前只支持IPV4,这已经满足了绝大多数产品的需要。新的版本在开发中,新的版本将支持PROFILE-S功能。
1. 发现
实现设备发现。在局域网内,设备的客户端组播 probe消息,设备收到广播消息后,会给客户端发消息,告诉设备的存在。设备在启动后,会想局域网内广播hello消息,通知局域网内的客户端,其设备联入局域网了。另外在设备主动重启的时候,会广播bye消息。
2. 设备管理
具体包括:
功能。供客户端查询设备具备哪些功能。
网络。支持网络方面的功能,比如查询,设置网络接口,查询设置DNS,查询设置网关等等
系统。支持获取设备信息。设备备份(需要具体产品的实现),查询和设置系统时间,恢复出厂设置(需具体产品实现)。查询系统日志。系统重启等等。
安全。实现用户的查询,添加,删除。实现了用户认证(Username-Token)算法。
3. 事件处理
软件实现的事件的处理。
两种方式
基本通知接口(Basic Notification interface)
实时Pull-Point通知接口(Real-time Pullpoint Notification Interface)
组成
1. wsdd_server
多线程daemon进程,支持设备的发现特性。同时也是系统参数的管理器,其它进程必须依赖其工作。
2. device_server
实现设备管理特性的CGI进程。其单独不能完整实现设备管理,依赖wsdd_server进程。
3. events
实现事件处理的CGI进程。其单独不能完整实现事件处理,需要events_submgr进程配合,同时依赖wsdd_server
4. events_submgr
事件处理的subscription管理器,它由events进程创建,但其生命周期不依赖于events进程。
有做视频监控设备的厂商,或者开发ONVIF协议的兄弟们可以与我们联络。 |