一种将标准Webrtc客户端接入现有系统的方法与流程

文档序号:17727094发布日期:2019-05-22 02:35阅读:453来源:国知局
一种将标准Webrtc客户端接入现有系统的方法与流程

本发明涉及音视频即时通讯相关技术领域,尤其是指一种将标准webrtc客户端接入现有系统的方法。



背景技术:

现有的视频会议系统采用私有协议,客户端的接入都是通过提供sdk方式进行,需要接入的平台都会提供属于该平台的sdk,然后开发相应的应用程序接入视频会议系统。为了支持更多的设备以及保证各个平台之间的通用性,现有系统希望接入浏览器作为视频会议客户端。



技术实现要素:

本发明是为了克服现有技术中存在上述的不足,提供了一种能够扩展系统用户量的将标准webrtc客户端接入现有系统的方法。

为了实现上述目的,本发明采用以下技术方案:

一种将标准webrtc客户端接入现有系统的方法,具体操作步骤如下:

(1)浏览器将创建房间、加入房间、离开房间以及销毁房间命令传输给webrtc信令服务器;

(2)webrtc信令服务器处理来自浏览器的创建房间、加入房间、离开房间以及销毁房间命令,将其转换为视频会议系统原有的命令传输给视频会议信令服务器;

(3)视频会议客户端将创建房间、加入房间、离开房间以及销毁房间命令传输给视频会议信令服务器,webrtc信令服务器协商视频会议客户端直接以何种数据格式进行传输;

(4)协商完成之后,浏览器与webrtc媒体服务器建立数据传输通道,并将媒体数据推送到webrtc媒体服务器中;

(5)webrtc媒体服务器将媒体数据转换为协商完成后的视频会议系统专用格式数据,然后传输给视频会议服务器,视频会议服务器将格式数据传输给视频会议客户端;

(6)视频会议客户端同时将视频会议客户端的数据发送给视频会议服务器,视频会议服务器将视频会议客户端的数据发送给webrtc媒体服务器并将其转换为媒体数据,之后传输给浏览器实现一对一的视频通讯。

本发明提供一种接入方式,将标准的webrtc客户端(浏览器、手机、个人电脑、机顶盒等)接入现有系统,如视频会议、安防监控等等,支持更多的设备以及保证各个平台之间的通用性,从而达到扩展系统用户量的目标。

作为优选,在步骤(1)中,浏览器会将自己的信息上传给webrtc信令服务器,信息主要包括支持的编解码信息以及网络信息,网络信息用于建立数据传输通道,编解码信息用于协商视频会议客户端直接以何种数据格式进行传输。

作为优选,所述的webrtc是网页即时通信的缩写,具体指的是一个支持网页浏览器进行实时语音对话或视频对话的api;webrtc信令服务器相对于webrtc媒体服务器而言,用于处理除媒体数据以外的数据;webrtc媒体服务器用于传输媒体数据;视频会议信令服务器类似webrtc信令服务器,只是处理的信令属于视频会议系统本身;视频会议媒体服务器类似webrtc媒体服务器,只是处理的媒体数据来自视频会议客户端。

本发明的有益效果是:支持更多的设备以及保证各个平台之间的通用性,从而达到扩展系统用户量的目标。

附图说明

图1是本发明的流程图;

图2是图1的一种具体实施方式。

图中:1.上层,2.下层,3.中间层。

具体实施方式

下面结合附图和具体实施方式对本发明做进一步的描述。

如图1所述的实施例中,一种将标准webrtc客户端接入现有系统的方法,具体操作步骤如下:

(1)浏览器将创建房间、加入房间、离开房间以及销毁房间命令传输给webrtc信令服务器;浏览器会将自己的信息上传给webrtc信令服务器,信息主要包括支持的编解码信息以及网络信息,网络信息用于建立数据传输通道,编解码信息用于协商视频会议客户端直接以何种数据格式进行传输;

(2)webrtc信令服务器处理来自浏览器的创建房间、加入房间、离开房间以及销毁房间命令,将其转换为视频会议系统原有的命令传输给视频会议信令服务器;

(3)视频会议客户端将创建房间、加入房间、离开房间以及销毁房间命令传输给视频会议信令服务器,webrtc信令服务器协商视频会议客户端直接以何种数据格式进行传输;

(4)协商完成之后,浏览器与webrtc媒体服务器建立数据传输通道,并将媒体数据推送到webrtc媒体服务器中;

(5)webrtc媒体服务器将媒体数据转换为协商完成后的视频会议系统专用格式数据,然后传输给视频会议服务器,视频会议服务器将格式数据传输给视频会议客户端;

(6)视频会议客户端同时将视频会议客户端的数据发送给视频会议服务器,视频会议服务器将视频会议客户端的数据发送给webrtc媒体服务器并将其转换为媒体数据,之后传输给浏览器实现一对一的视频通讯。

其中:webrtc是网页即时通信(webreal-timecommunication)的缩写,具体指的是一个支持网页浏览器进行实时语音对话或视频对话的api;webrtc信令服务器相对于webrtc媒体服务器而言,用于处理除媒体数据以外的数据;webrtc媒体服务器用于传输媒体数据;视频会议信令服务器类似webrtc信令服务器,只是处理的信令属于视频会议系统本身;视频会议媒体服务器类似webrtc媒体服务器,只是处理的媒体数据来自视频会议客户端。

图2中的firefox、chrome对应图1的浏览器。图2方框内容的组件组成webrtc网关服务器,即图1中webrtc信令服务器和webrtc媒体服务器的组合。图2中im和router对应图1中视频会议信令服务器。图2中relaysvr对应图1中视频会议媒体服务器。图2中客户端对应图1中视频会议客户端。

图2中tranport模块对应webrtc信令服务器,主要支持http/https和websocket/websockets协议,处理创建房间、加入房间、离开房间以及销毁房间命令。

图2中ice模块和plugins模块对应webrtc媒体服务器,ice模块的作用是数据传输通道的建立;plugins模块的作用传输数据的分发管理。当浏览器加入房间的时候,会将自己的信息上传给webrtc信令服务器,这些信息主要包括自己支持的编解码信息以及自己的网络信息。网络信息用于ice模块建立数据传输通道,编解码信息用于协商客户端直接以何种数据格式进行传输。

图2中rtcmessage模块用于将webrtc信令服务器部分命令翻译为视频会议系统信令操作,将上述创建房间、加入房间、离开房间以及销毁房间命令转换为视频会议系统原有的命令。

在数据传输通道建立完成以及媒体格式协商完成后,浏览器就可以推送媒体数据到webrtc媒体服务器。ice模块接收到rtp格式数据之后交给plugins模块处理,我们通过translatertp模块将rtp格式数据转换为视频会议私有格式数据,然后传输给relaysvr,relaysvr会将视频会议私有格式数据传输给视频会议客户端;translatertp模块还会接收客户端的数据同时将接收到的数据转换为rtp格式数据,交给ice模块传输给浏览器,这样双方就完成了一对一的视频通讯。

其中:rtcmessage模块和translatertp模块用于跟现有视频会议系统交互,属于可变部分,对接不同的系统使用的模块是不一样的。系统的整个架构可以通过修改插件部分对接现有流媒体相关的系统,这边对接的不是视频会议客户端,对接的是视频会议系统,这边的视频会议客户端属于其中的一小部分。如果对接其他流媒体相关的系统,视频会议相关部分会全部去掉,rtcmessage模块和translatertp模块也不会被使用。im和router属于视频会议系统的一部分,属于现有系统的范围,不是本专利的重点,如果换成其他那么im和router就不存在了。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1