SDK接口调用流程¶
流程说明¶
实现SDK接口时,根据不同的功能需求,可以分为14个模块。每个模块的实现都需要遵循以下四个基本流程:
基础流程¶
-
初始化SDK接口
- 对整个网络SDK系统进行初始化,包括内存预分配等操作。
-
设置连接超时时间接口(可选)
- 设置SDK中的网络连接超时时间,若不设置则使用默认值。
-
相关接口调用
- 根据要实现的功能,选择合适的接口。
-
用户注册设备接口
- 用户注册功能,返回的用户ID作为后续操作的唯一标识。
功能模块¶
1. SDK初始化、设备注册、基础信息获取¶
- SDK初始化
- SDK初始化
- 设置重连时间、次数。
- SDK资源释放
- 设备主动/被动注册,登出。
- 注册成功后,返回的用户ID作为其他功能操作的唯一标识
- SDK允许最大注册用户数为512个
- 设备支持最多32个注册用户名,同时最多128个用户注册
- 设备激活
- 局域网设备搜索
- 异常消息回调
- 错误信息获取
2. 预览¶
- 从前端服务器获取实时码流。
- 解码显示以及播放控制。
3. 回放和下载¶
- 按时间远程回放或下载录像文件。
- 支持断点续传功能。
4. 远程参数配置¶
- 设置和获取设备的参数,包括:
- 修改设备时间
- 进入、退出配置
- 获取配置信息
- 修改网络配置
- 日志配置
- 用户管理
5. 远程设备维护¶
- 日志查找
- 设备升级
- 录像事件信息查找
- 配置文件导入/导出
- 磁盘管理
- 关闭/重启设备
6. 语音对讲转发¶
- 实现语音数据对讲和获取。
- 支持自定义音频编码格式。
7. 智能报警¶
- 订阅/取消订阅智能事件,当设备出现报警时将通过SDK推送。
8. 云台控制¶
- 实现对云台的基本操作、预置点、巡航、轨迹控制。
- 分为两种控制模式:
- 通过图像预览返回的句柄进行控制
- 无预览限制,通过用户注册ID号进行控制
9. 视频抓图¶
- 截取设备当前的图像,保存到文件获取缓冲区。
- 下载/搜索设备中保存的截图。
10. 协议透传¶
- 使用设备API接口与设备进行交互。当SDK提供的接口无法实现所需功能时可以考虑使用此方式、需要用户自行解析API返回的内容(xml格式)。
11. 设备报警信息¶
- 获取报警信息及报警输出状态
- 手动报警
- 布防/撤防
- 报警回调
12. 人脸比对¶
- 开启/关闭人脸比对功能
- 人脸目标管理、人脸目标组管理、人脸比对报警配置
13. 鱼眼矫正(仅支持Windows)¶
- 设置焦点
- 获取当前焦点所在的校正区域位置
- 电子云台移动
- 电子云台放大
- 设置鱼眼校正模式
14. 获取设备信息¶
- 设备信息
- 通道状态
- 固件类型
- 设备支持的功能
- 设备时间
- 录像状态
- 设备的RTSP URL
- 数据SHA1加密
结论¶
本文详细介绍了SDK接口调用流程,包括基础流程和功能模块的实现,旨在帮助开发者有效使用SDK进行开发和维护。