SDK接口调用主流程
- (1)开启开发包:初始化SDKNetClient_Startup|NetClient_Startup_V4,包括对整个网络SDK系统的初始化,内存预分配等操作。
- (2)注册消息(NetClient_SetMSGHandle)和回调(NetClient_SetNotifyFunction),其中消息机制仅限于Windows平台使用,而回调机制可用于Windows平台和Linux平台。注意:SDK是异步运行模式,需注册消息回调来处理上层业务逻辑。
- (3)登录设备:调用 NetClient_Logon|NetClient_LogonEx 完成操作。注意: 登录操作成功后并不代表成功登录服务器,需要通过回调或者消息来获得登录状态登录后,会获得一个系统消息(如果设置了消息句柄),可以从消息判断登录是否成功。如果设置了回调函数,也可以在回调函数内处理登录结果,建议使用消息机制。关于 logonID 有效期的解释:在成功调用 NetClient_Logon 至成功调用 NetClient_Logoff 之前的任何时段都是有效的。即如果一个设备第一次或第 N 次收到 TIME_OUT 消息时,都处于有效时间段。如果需要彻底销毁 ID,必须调用 NetClient_Logoff,无论这个设备是否真正连接成功。不然将导致 ID 持续增加,到时,再无法连接其他设备(IP无重复)。
- (4)连接视频:客户端通过网络连接视频源可进行预览、存储等操作。相关接口按调用顺序如下:NetClient_StartRecv|NetClient_StartRecvEx |NetClient_StartRecv_V4 、NetClient_StartPlay、NetClient_StopPlay、 NetClient_StopRecv。具体流程详见连接视频流程。
- (5)录像回放:播放本地视频录像文件,需要加载 PlaySdkM4库文件。首先调用 TC_CreatePlayerFromFile 来创建播放系统,调用 TC_RegisterEventMsg 注册播放出现问题时进行消息通知的接收窗体句柄和消息值。 TC_CreatePlayerFromFile创建一个播放实例,以文件方式播放,之后调用其他接口实现播放,暂停,快播,慢播等功能,在退出软件前调用 TC_DeletePlayer 删除一个播放器实例,TC_CreatePlayerFromFile 删除播放系统。具体流程详见录像回放流程。
- (6)VoD点播:查询DVR设备本地录像文件,并下载点播。
- (7)录像查询与下载:远程下载DVR设备本地录像文件,远程文件下载也有两种方式,一种是按录像文件下载,一种按时间段下载。具体流程详见录像查询与下流程。
- (8)智能分析:目前由于DVR/NVR M7.6设备,不支持智能分析参数改变消息,因此是否智能分析为是能状态需要调用NetClient_VCAGetConfig进行获取,相关接口NetClient_VCASetConfig。具体流程详见智能分析流程。
- (9)参数配置:可以修改和获取设备的参数配置。具体流程详见参数配置流程。
- (10)报警模块:处理设备上传的各种报警信号(视频移动报警、视频丢失、端口报警和遮挡报警等)。具体流程详见报警模块流程。
- (11)日志管理:可查询、下载设备日志,包括系统、报警、警告、操作、用户和其他。具体流程详见日志管理流程。
- (12)透明通道:通过透明通道进行串口的数据发送操作。具体流程详见透明通道流程。
- (13)数字通道:DVR/NVR可通过数字通道连接前端视频源。具体流程详见数字通道流程。
- (14)对讲模块:实现客户端和设备的语音数据对讲和语音数据获取。具体流程详见对讲模块流程。
- (15)退出登录:注销用户登录,使用接口NetClient_Logoff完成操作。
- (16)释放SDK资源:使用接口NetClient_Cleanup完成操作,如无特殊说明运行此函数后将不能再调用SDK中其他接口。