视频监控系统视频上云解决方案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青犀视频,可以联系我们获取演示方案,直观感受,也可自行进行下载及测试。

 
posted on 2020-09-01 10:13  EasyNVR  阅读(748)  评论(0编辑  收藏  举报