一种基于Docker容器技术的WebRTC媒体网关及其互通方法与流程

文档序号:16686448发布日期:2019-01-22 18:21阅读:1667来源:国知局
一种基于Docker容器技术的WebRTC媒体网关及其互通方法与流程

本发明涉及移动互联网领域,尤其涉及一种基于docker容器技术的webrtc媒体网关及其互通方法。



背景技术:

webrtc,名称源自网页实时通信(webreal-timecommunication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的技术,是谷歌2010年以6820万美元收购globalipsolutions公司而获得的一项技术。2011年5月开放了工程的源代码,在行业内得到了广泛的支持和应用,成为下一代视频通话的标准。

标准的webrtc是基于p2p协议进行视频通话的,这种标准协议的情况在一对一视频通话时效果是很好的,但是一旦出现多对多的视频通话情况就往往无法适应带宽和终端处理能力,因为多对多视频通话将会占有较多的带宽和音视频编解码资源。



技术实现要素:

本发明针对现有技术中存在的问题,提供一种基于docker容器技术的webrtc媒体网关及其互通方法,使用docker容器技术构建用于支持一对多和多对多视频通话、音视频转码和媒体内容分发,本媒体网关也支持录像功能和美颜滤镜功能,给视频通话增加乐趣,增加系统的安全性和进行快速部署,解决了视频通话占用较多带宽和编解码资源的缺点。

为实现上述目的,本发明提供的技术方案如下:

一种基于docker容器技术的webrtc媒体网关及其互通方法,包括webrtc媒体网关管理模块和webrtc媒体网关镜像:

所述webrtc媒体网关管理模块用于接收客户端的媒体处理请求和创建docker容器,并在所述创建docker容器时将相关的媒体处理参数传递给所述docker容器;

所述webrtc媒体网关镜像运行在docker容器上,所述webrtc媒体网关镜像包括转码模块和协议转换模块,所述转码模块用于按照所述媒体处理参数进行转码处理,将客户端的视频和音频格式转换为设置的视频和音频格式,所述协议转换模块用于按照所述媒体处理参数进行协议转换处理,将客户端的rtp协议转换为设置的rtmp、http-flv、hls和dash协议。

进一步地,所述webrtc媒体网关镜像还包括录像存储模块和美颜滤镜模块,

所述录像存储模块用于将转码后的数据进行切片文件录像并存储起来,达到回看的目的;

所述美颜滤镜模块用于对视频进行美颜滤镜处理,并将该视频重新封装打包进rtmp、http-flv、hls和dash协议进行一对多和多对多分发。

进一步地,所述媒体处理参数包括转码参数、协议转换参数、录像存储路径和美颜滤镜参数。

进一步地,所述美颜滤镜处理包括美白、添加帽子和添加表情。

进一步地,所述webrtc媒体网关管理模块还负责在webrtc视频通话会话结束后,对该webrtc视频通话会话对应的docker容器进行删除。

一种基于docker容器技术的webrtc媒体网关互通方法,其特征在于,包括:

s1,webrtc媒体网关连接需要进行webrtc视频通话的所有客户端,并接收所述客户端发出的请求媒体服务;

s2,判断是否已经存在同一个webrtc视频通话会话的docker容器,如果没有则创建该视频通话会话的docker容器,如果已经存在则将该客户端添加进入该docker容器,然后将相关的媒体处理参数传递给docker容器;

s3,对所述媒体处理参数进行转码处理,将客户端的视频和音频格式转换为设置的视频和音频格式;

s4,对所述媒体处理参数进行协议转换处理,将客户端的rtp协议转换为设置的rtmp、http-flv、hls和dash协议。

进一步地,在执行所述步骤s4协议转换处理后,所述互通方法还包括:

将转码后的数据进行切片文件录像并存储起来,达到回看的目的;

对视频进行美颜滤镜处理,并将该视频重新封装打包进rtmp、http-flv、hls和dash协议进行一对多和多对多分发。

进一步地,所述媒体处理参数包括转码参数、协议转换参数、录像存储路径和美颜滤镜参数。

进一步地,所述美颜滤镜处理包括美白、添加帽子和添加表情。

进一步地,所述互通方法在webrtc视频通话会话结束后,对该webrtc视频通话会话对应的docker容器进行删除,避免容器数目越来越多。

与现有技术相比,本发明提出一种webrtc媒体网关,使用docker容器技术构建用于支持一对多和多对多视频通话、音视频转码和媒体内容分发,本媒体网关也支持录像功能和美颜滤镜功能,给视频通话增加乐趣,增加系统的安全性和进行快速部署,解决了视频通话占用较多带宽和编解码资源的缺点。

附图说明

图1:为本发明webrtc媒体网关的结构图;

图2:为本发明webrtc媒体网关互通方法实施例中步骤流程图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

参照图1,本发明使用docker容器技术构建webrtc媒体网关,每一个webrtc视频通话会话创建一个docker容器运行webrtc媒体网关镜像,webrtc媒体网关镜像包括转码模块、协议转换模块、录像存储模块和美颜滤镜模块。为了接收来自客户端的媒体处理请求和对webrtc媒体网关容器进行管理,本发明还包括了webrtc媒体网关管理模块。

参照图2,本发明方法的流程为:

1、将需要进行webrtc视频通话的所有客户端都连接到webrtc媒体网关管理模块,这些客户端向webrtc媒体网关管理模块请求媒体服务;

2、webrtc媒体网关管理模块接收到客户端的媒体处理请求后判断是否已经存在同一个webrtc视频通话会话的webrtc媒体网关容器,如果没有则使用webrtc媒体网关镜像创建该视频通话会话的webrtc媒体网关容器,在创建时将相关的媒体处理参数传递给webrtc媒体网关容器,如果已经存在则将该客户端添加进入该webrtc媒体网关容器并将相关的媒体处理参数传递给webrtc媒体网关容器。媒体处理参数包括转码参数、协议转换参数、录像存储路径和美颜滤镜等参数;

3、webrtc媒体网关按照webrtc网关管理模块的媒体处理参数后进行转码处理,将客户端的视频和音频格式转换为设置的视频和音频格式,例如将vp8、vp9、h264转换为h265视频,将opus、isac转换为aac音频;

4、webrtc媒体网关按照webrtc网关管理模块的媒体处理参数后进行协议转换处理,将客户端的rtp协议转换为设置的rtmp、http-flv、hls和dash协议;

5、webrtc媒体网关将转码后的视频和音频数据按照hls协议进行切片文件录像并存储起来,这样可以达到回看的目的,存储的路径由webrtc媒体网关管理模块传递给该webrtc媒体网关容器;

6、webrtc媒体网关根据客户端选择的美颜滤镜功能对视频进行处理,包括但不限于美白、添加帽子和表情等美颜滤镜处理,并将该视频重新封装打包进rtmp、http-flv、hls和dash协议进行一对多和多对多分发,用于支持更多客户端观看这些webrtc客户端的媒体内容;

7、在webrtc视频通话会话结束后,webrtc媒体网关管理模块对该webrtc视频通话会话对应的webrtc媒体网关容器进行删除,避免容器数目越来越多。

本发明提供一种基于docker容器技术的webrtc媒体网关及其互通方法,具有以下优点:本发明提出一种webrtc媒体网关,使用docker容器技术构建用于支持一对多和多对多视频通话、音视频转码和媒体内容分发,本媒体网关也支持录像功能和美颜滤镜功能,给视频通话增加乐趣,增加系统的安全性和进行快速部署,解决了视频通话占用较多带宽和编解码资源的缺点。

以上所述仅为本发明的较佳实施例,并不用于限制本发明,凡在本发明的精神和原则内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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