经过这么多年的视频技术开发,TSINGSEE青犀视频团队已经有了一套自己的研发体系,除了大家比较熟知的视频智能分析平台外,其实TSINGSEE青犀视频还有很多好用的SDK及工具。其中EasyScreenLive就是我们研发的一款简单、高效、稳定的同屏功能组件。
EasyScreenLive可以提供一个轻量级的RTSPSERVER服务,其中Win版测试调用方法中是通过以下定义的接口函数完成:
//开始RTSP服务 LIB_EASYSLIVE_API int EasyScreenLive_StartServer(EASYSLIVE_HANDLE handler, int listenport, char *username, char *password, EASYLIVE_CHANNEL_INFO_T *channelInfo, int channelNum);
既然是本机开启服务,肯定需要告知客户端端本机的地址是多少,我们可以通过以下方法获取本机的IP地址,然后在开启服务的RTSP URL中完整拼接。
int GetLocalIP( std::string &local_ip )
{
WSADATA wsaData = {0};
if (WSAStartup(MAKEWORD(2, 1), &wsaData) != 0)
return -1;
char szHostName[MAX_PATH] = {0};
int nRetCode;
nRetCode = gethostname(szHostName, sizeof(szHostName));
PHOSTENT hostinfo;
if (nRetCode != 0)
return WSAGetLastError();
hostinfo = gethostbyname(szHostName);
local_ip = inet_ntoa(*(struct in_addr*)*hostinfo->h_addr_list);
WSACleanup();
return 1; }
具体调用方法如下:
ret = EasyScreenLive_StartServer(g_pusher, 8554, "", "", liveChannel, MAX_CHANNEL_NUM );
string ip;
GetLocalIP(ip);
printf("start stream: rtsp://%s:8554/channel=0\n", ip.c_str() );
与TSINGSEE青犀视频开发的视频智能分析一样,我们的EasyScreenLive组件也提供了诸多接口,开发者只需要简单调用几个接口就可以满足企业级应用的需求,并且经过多年的项目和生产环境检验,目前已经成功稳定运行于多家合作伙伴的商业产品系统中。
随着科技的发展,无纸化会议服务有效的实现了单位与单位、单位与合作商之间的对接,同屏服务能更好的解决客户的实际需求,在无纸化会议中采用我们的EasyScreenLive组件也是未来发展的一个主要方向。如果大家有需求,欢迎联系我们。