是否能够获取海康摄像头的报警事件
-
一些摄像头具备智能检测功能,平台是否能够接入这方面的数据?
【越界侦测】
越界侦测(或穿越警戒面),检测是否有目标按指定方向越过指定界线,当有目标越过指定界线时触发报警。
初始化NET_DVR_Init接口在程序开始是调用,一个程序只需要调用一次。
用户注册即登录设备,调用NET_DVR_Login_V40接口,每一台设备只需要登录一次。
规则参数和联动方式等配置,如果事先已经配置则可省略该过程,配置相关参数和联动方式之后,设备将按照配置的规则自动检测,SDK可以通过报警布防方式获取设备上传的识别结果(联动方式必须选择“上传中心”类型)。不同的设备配置接口可能不同,详见1.2~1.4章节。
报警布防方式实现方法:
先调用NET_DVR_SetDVRMessageCallBack_V50设置报警回调函数(V31、V30接口也支持,新接口兼容老接口),在SDK初始化之后即可以调用,多台设备对接时也只需要调用一次设置一个回调函数,回调函数里面接收数据之后可以通过报警设备信息(NET_DVR_ALARMER)中lUserID等参数判断区分设备。
每台设备分别登录,分别调用NET_DVR_SetupAlarmChan_V41进行布防,布防即建立设备跟客户端之间报警上传的连接通道,这样设备发生报警之后通过该连接上传报警信息,SDK在报警回调函数中接收和处理报警信息数据即可。
程序退出前或者不需要接收报警信息时调用NET_DVR_CloseAlarmChan_V30进行撤防,释放资源,此时连接断开,设备将不再上传报警信息。
越界侦测(穿越警戒面)事件对应报警类型(lCommand)为COMM_ALARM_RULE,报警信息对应结构体:NET_VCA_RULE_ALARM,其中wEventTypeEx(行为事件类型)为ENUM_VCA_EVENT_TRAVERSE_PLANE。
退出程序时调用NET_DVR_Logout注销设备,每一台设备调用一次。最后调用NET_DVR_Cleanup释放SDK所有资源,一个程序只需要调用一次。