视频监控系统视频上云解决方案EasyCVR集成海康EHome私有协议系列——开启存储服务
目前我们的视频上云服务平台EasyCVR已经可集成海康EHome私有协议,并且在前文中我也跟大家讲过EHome协议的配置和调用流程,有兴趣的可以阅读一下:配置及协议介绍、Ehome协议调用流程介绍。
本文我们讲一下EasyCVR集成海康EHome私有协议在开始上传文件至存储服务(SS)或从存储服务(SS)下载文件之前,必须要开启存储服务,所以本文我们讲一下EasyCVR集成海康EHome协议调用开启存储服务的接口。
开启存储服务的接口调用流程图
1、调用NET_ESS_SetSDKInitCfg,设置enumType为“NET_EHOME_SS_INIT_CFG_PUBLIC_IP_PORT”,并将lpInBuff设置为NET_EHOME_IPADDRESS,从而设置SS的公共IP地址和端口。
当SS在公共网络环境下时,该步骤为必选。
2、调用NET_ESS_Init初始化SS。
3、调用NET_ESS_SetLogToFile为SS开启日志功能。
4、调用NET_ESS_StartListen开启SS监听。
5、上传文件至SS或从SS下载文件。
6、调用NET_ESS_StopListen停止SS监听。
下面这段代码示例大家也可以参考:
//初始化资源 NET_ESS_Init(); //开启日志功能 NET_ESS_SetLogToFile(3, "C:/SdkLog/", TRUE); //开启监听 NET_EHOME_SS_LISTEN_PARAM struSSListenParam = { 0 }; memcpy(struSSListenParam.struAddress.szIP, "10.8.97.60", strlen("10.8.97.60")); struSSListenParam.struAddress.wPort = 8080; memcpy(struSSListenParam.szKMS_UserName, "test", strlen("test")); memcpy(struSSListenParam.szKMS_Password, "12345", strlen("12345")); memcpy(struSSListenParam.szAccessKey, "test", strlen("test")); memcpy(struSSListenParam.szSecretKey, "12345", strlen("12345")); struSSListenParam.fnSMsgCb = SS_Message_Callback; struSSListenParam.fnSStorageCb = SS_Storage_Callback; struSSListenParam.pUserData = NULL; long m_lSSHandle = NET_ESS_StartListen(&struSSListenParam); if (-1 == m_lSSHandle) { printf("NET_ESS_StartListen Failed, port:%d", struSSListenParam.struAddress.wPort); } else { printf("NET_ESS_StartListen succ port:%d", struSSListenParam.struAddress.wPort); } char cTmp = '\0'; do { printf("Input q to exit!"); cTmp = getchar(); }while(cTmp != 'q'); //停止监听 NET_ESS_StopListen(m_lSSHandle); //释放资源 NET_ESS_Fini(); return 0;
EasyCVR视频平台播放界面:
视频联网云平台EasyCVR是一个集视频联网共享、存储、流媒体转发、视频转码、视频上云、智能分析统一等多种功能为一体的流媒体视频服务融合性平台。视频相关解决方案均可访问TSINGSEE青犀视频,可以联系我们获取演示方案,直观感受,也可自行进行下载及测试。