一种基于网页的实时通信的媒体处理方法与装置制造方法及图纸

技术编号:14055782 阅读:83 留言:0更新日期:2016-11-27 00:22
一种基于网页的实时通信的媒体处理方法与装置,在多用户实时多媒体通信场景下,降低客户端处理负荷及减少网络带宽消耗。所述方法包括:第一WebRTC终端与第二WebRTC终端建立点对点实时多媒体通信后,应用服务器接收到第一WebRTC终端决定将其他一个或多个第三方WebRTC终端加入通信的消息,分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接;所述应用服务器控制所述媒体处理单元建立第一WebRTC终端、第二WebRTC终端与第三方WebRTC终端的多方会议,以使得多方会议中的每个WebRTC终端只需要发送一路媒体流,接收一路合成后的媒体流。

【技术实现步骤摘要】

本专利技术涉及网络实时通信技术,尤其是指一种基于网页的实时通信的媒体处理方法与装置
技术介绍
WebRTC(Web Real-Time Communication,基于网页的实时通信)是Google收购Global IP Solution公司而获得的一项支持网页浏览器进行实时音视频通信的技术。为了促进免插件的Web浏览器实时多媒体通信的发展,Google于2011年将WebRTC技术向公众开源,并联合业界相关厂商成立了W3C WebRTC标准组和IETF RTC-WEB标准组。其中,W3C WebRTC标准组负责制定面向Web开发者的JavaScript API,IETF RTC-WEB标准组则负责制定浏览器内部WebRTC协议栈的音视频编解码、网络传输和NAT(Network Address Translation,网络地址转换)穿越等技术标准。随着WebRTC标准的持续推进,主流的Chrome、Firefox和Opera等浏览器都将WebRTC功能原生地嵌入到浏览器框架当中。利用这些浏览器提供的JavaScript API,Web开发者可以利用自主选择的信令协议完成“邀约/应答(Offer/Answer)媒体协商过程,进而实现两方或多方之间的音视频通信或其他网页即时通信业务。WebRTC带给Web开发者最大的好处在于,过去必须由浏览器插件实现的音视频编解码模块、网络传输模块等都集成到浏览器内部,这样就极大地降低了网页即时通信的开发工作量和难度,使得Web开发者有更多的精力投入实时多媒体交互的业务逻辑。正因为这种利好因素,近年来WebRTC原型系统如雨后春笋般涌现,包括电信运营商、互联网厂商都积极开展WebRTC技术的研究和探索。尽管WebRTC携各种优势在互联网上引起广泛的关注,但同时也应当注意到,任何技术都具有两面性。就WebRTC而言,其媒体交互方案采用了点对点的直传方式就是一个隐形弊端。在图1所示的简单WebRTC实时通信场景下,多个WebRTC终端位于同一个局域网环境或多个WebRTC终端分别位于不同的非对称型NAT之后的局域网当中。其中,中间的WebRTC终端和非对称型NAT都标注有“1……N”字样,代表1至N个这样的WebRTC终端与非对称型NAT网元对。由图1可知,每一个通信参与方都需要在发送N-1(N为通信参与方总数)路实时媒体流的同时,接收其他N-1方发送的实时媒体流。这样一来,每一个WebRTC终端实际上都需要同时处理((N-1)+(N-1)+1)路媒体流,也即共计2N-1路。其中,“1”表示各个WebRTC终端自己一方的媒体流。图1中,细实线表示信令链路,粗实线表示跨局域网媒体链路,粗虚线表示局域网媒体链路。在图2所示的中继WebRTC实时通信场景下,其本质上与图1的方式是一致的,同样每个WebRTC终端都需要处理2N-1路媒体流。它们的主要区别在于,这些互相通信的WebRTC终端并不是处于同一个局域网环境当中,而是位于不同的对称型NAT之后的局域网当中,因此所有的媒体流都需要经过中继服务器绕道至其他各方。图1中,细实线表示信令链路,粗实线表示媒体链路。实践证明,在两方通话或局域网环境下的少数多方会议场景下,WebRTC点对点媒体流直传方式或许还可以勉强应对。然而,随着通信人数的增多,以及面对复杂的Internet环境时,这将不可避免地导致客户端处理负荷过重、用户网络带宽消耗过大和服务质量急剧下降等不良影响,进而最终影响到用户的即时通信体验和业务的发展壮大。
技术实现思路
本专利技术要解决的技术问题是提供一种WebRTC的媒体处理方法与装置,在多用户实时多媒体通信场景下,降低客户端处理负荷以及减少网络带宽消耗。为了解决上述技术问题,本专利技术提供了一种基于网页的实时通信
WebRTC的媒体处理方法,应用服务器执行以下处理:第一WebRTC终端与第二WebRTC终端建立点对点实时多媒体通信后,所述应用服务器接收到第一WebRTC终端决定将其他一个或多个第三方WebRTC终端加入通信的消息,分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,并断开所述第一WebRTC终端与第二WebRTC终端之间的点对点媒体连接;所述应用服务器控制所述媒体处理单元建立第一WebRTC终端、第二WebRTC终端与第三方WebRTC终端的多方会议,以使得所述多方会议中的每个WebRTC终端只需要发送一路媒体流,接收一路合成后的媒体流。进一步地,所述媒体处理单元包括媒体服务器;或者,所述媒体处理单元包括媒体网关和多点控制单元。进一步地,所述媒体处理单元包括媒体服务器;所述应用服务器分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,包括:分别协助完成第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与所述媒体服务器之间的媒体协商,以使得每个WebRTC终端与所述媒体服务器之间利用所述媒体协商的结果建立双方之间的媒体通道;或者分别协助完成第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与所述媒体服务器之间的媒体协商,以使得每个WebRTC终端与所述媒体服务器利用所述媒体协商的结果建立双方之间的经交互式连接建立ICE中继服务器的媒体通道。进一步地,所述媒体处理单元包括媒体网关和多点控制单元;所述应用服务器分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,包括:分别协助完成第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与所述媒体网关之间的媒体协商,以及所述媒体网关与所述多点控制单元之间的媒体协商,以使得每个WebRTC终端与所述媒体网关利用媒体协商
的结果建立双方之间的媒体通道,以及所述媒体网关与所述多点控制单元利用媒体协商的结果建立双方之间的媒体通道;或者分别协助完成第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与所述媒体网关之间的媒体协商,以及所述媒体网关与所述多点控制单元之间的媒体协商,以使得每个WebRTC终端与所述媒体网关利用媒体协商的结果建立双方之间的经ICE中继服务器的媒体通道,以及所述媒体网关与所述多点控制单元利用媒体协商的结果建立双方之间的媒体通道。进一步地,所述应用服务器分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,包括:在每个WebRTC终端与所述媒体处理单元进行媒体协商的过程中,所述应用服务器将每个WebRTC终端发送给所述媒体处理单元的消息转换为所述媒体处理单元能够识别和处理的消息格式,以及将所述媒体处理单元发送给WebRTC终端的消息转换为所述WebRTC终端能够识别和处理的消息格式。进一步地,所述应用服务器控制所述媒体处理单元建立第一WebRTC终端、第二WebRTC终端与第三方WebRTC终端的多方会议,以使得所述多方会议中的任一个WebRTC终端只需要发送一路媒体流,接收一路合成后的媒体流,包括:所述应用服务器与所述媒体处理单元进行交互,在所述媒体本文档来自技高网
...
一种基于网页的实时通信的媒体处理方法与装置

【技术保护点】
一种基于网页的实时通信WebRTC的媒体处理方法,其特征在于,应用服务器执行以下处理:第一WebRTC终端与第二WebRTC终端建立点对点实时多媒体通信后,所述应用服务器接收到第一WebRTC终端决定将其他一个或多个第三方WebRTC终端加入通信的消息,分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,并断开所述第一WebRTC终端与第二WebRTC终端之间的点对点媒体连接;所述应用服务器控制所述媒体处理单元建立第一WebRTC终端、第二WebRTC终端与第三方WebRTC终端的多方会议,以使得所述多方会议中的每个WebRTC终端只需要发送一路媒体流,接收一路合成后的媒体流。

【技术特征摘要】
1.一种基于网页的实时通信WebRTC的媒体处理方法,其特征在于,应用服务器执行以下处理:第一WebRTC终端与第二WebRTC终端建立点对点实时多媒体通信后,所述应用服务器接收到第一WebRTC终端决定将其他一个或多个第三方WebRTC终端加入通信的消息,分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,并断开所述第一WebRTC终端与第二WebRTC终端之间的点对点媒体连接;所述应用服务器控制所述媒体处理单元建立第一WebRTC终端、第二WebRTC终端与第三方WebRTC终端的多方会议,以使得所述多方会议中的每个WebRTC终端只需要发送一路媒体流,接收一路合成后的媒体流。2.根据权利要求1所述的方法,其特征在于,所述媒体处理单元包括媒体服务器;或者所述媒体处理单元包括媒体网关和多点控制单元。3.根据权利要求2所述的方法,其特征在于,所述媒体处理单元包括媒体服务器;所述应用服务器分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,包括:分别协助完成第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与所述媒体服务器之间的媒体协商,以使得每个WebRTC终端与所述媒体服务器之间利用所述媒体协商的结果建立双方之间的媒体通道;或者分别协助完成第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与所述媒体服务器之间的媒体协商,以使得每个WebRTC终端与所述媒体服务器利用所述媒体协商的结果建立双方之间的经交互式连接建立ICE中继服务器的媒体通道。4.根据权利要求2所述的方法,其特征在于,所述媒体处理单元包括媒体网关和多点控制单元;所述应用服务器分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,包括:分别协助完成第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与所述媒体网关之间的媒体协商,以及所述媒体网关与所述多点控制单元之间的媒体协商,以使得每个WebRTC终端与所述媒体网关利用媒体协商的结果建立双方之间的媒体通道,以及所述媒体网关与所述多点控制单元利用媒体协商的结果建立双方之间的媒体通道;或者分别协助完成第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与所述媒体网关之间的媒体协商,以及所述媒体网关与所述多点控制单元之间的媒体协商,以使得每个WebRTC终端与所述媒体网关利用媒体协商的结果建立双方之间的经ICE中继服务器的媒体通道,以及所述媒体网关与所述多点控制单元利用媒体协商的结果建立双方之间的媒体通道。5.根据权利要求1或3或4所述的方法,其特征在于,所述应用服务器分别协助建立第一WebRTC终端、第二WebRTC终端、第三方WebRTC终端与媒体处理单元之间的媒体连接,包括:在每个WebRTC终端与所述媒体处理单元进行媒体协商的过程中,所述应用服务器将每个WebRTC终端发送给所述媒体处理单元的消息转换为所述媒体处理单元能够识别和处理的消息格式,以及将所述媒体处理单元发送给WebRTC终端的消息转换为所述WebRTC终端能够识别和处理的消息格式。6.根据权利要求1所述的方法,其特征包括:所述应用服务器控制所述媒体处理单元建立第一WebRTC终端、第二WebRTC终端与第三方WebRTC终端的多方会议,以使得所述多方会议中的任一个WebRTC终端只需要发送一路媒体流,接收一路合成后的媒体流,包括:所述应用服务器与所述媒体处理单元进行交互,在所述媒体处理单元上创建多方会议,控制所述媒体处理单元进行多方媒体合成与展示,以使在一个多方会议中,会议中的每个WebRTC终端只需要向所述媒体处理单元发送一路媒体流,以及接收所述媒体处理单元发送的一路合成后的媒体流。7.根据权利要求6所述的方法,其特征在于,所述应用服务器与所述媒体处理单元进行交互,在所述媒体处理单元上创建多方会议,控制所述媒体处理单元进行多方媒体合成与展示,包括:所述应用服务器向所述媒体处理单元发送创建会议的请求,在接收到所述媒体处理单元返回的会议连接相关的信息后,向所述媒体处理单元发送媒体合成与展示策略信息,以使所述媒体处理单元根据所述媒体合成与展示策略信息完成多方会议的媒体流合成,并利用所述媒体处理单元与多方会议中各WebRTC终端之间的媒体连接完成媒体流分发。8.一种基于网页的实时通信WebRTC的媒体处理方法,其特征在于,媒体处理单元执行以下处理:所述媒体处理单元根据应用服务器的协助,分别建立与多个WebRTC终端中每一个WebRTC终端之间的媒体连接;所述媒体处理单元与所述应用服务器进行交互,创建多方会议,进行多方媒体合成与展示,以使在一个多方会议中,会议中的每个WebRTC终端只需要向所述媒体处理单元发送一路媒体流,以及接收所述媒体处理单元发送的一路合成后的媒体流。9.根据权利要求8所述的方法,其特征在于,所述媒体处理单元包括媒体服务器;或者所述媒体处理单元包括媒体网关和多点控制单元。10.根据权利要求9所述的方法,其特征在于,所述媒体处理单元包括媒体服务器;所述媒体处理单元根据应用服务器的协助,分别建立与多个WebRTC终端中每一个WebRTC终端之间的媒体连接,包括:根据所述应用服务器的协助,分别完成与多个WebRTC终端中每一个WebRTC终端之间的媒体协商,利用媒体协商结果与多个WebRTC终端中每一个WebRTC终端建立双方之间的媒体通道;或者根据所述应用服务器的协助,分别完成与多个WebRTC终端中每一个WebRTC终端之间的媒体协商,利用媒体协商结果与多个WebRTC终端中每一个WebRTC终端建立双方之间经交互式连接建立ICE中继服务器的媒体通
\t道。11.根据权利要求9所述的方法,其特征在于,所述媒体处理单元包括媒体网关和多点控制单元;所述媒体处理单元根据应用服务器的协助,分别建立与多个WebRTC终端中每一个WebRTC终端之间的媒体连接,包括:根据所述应用服务器的协助,分别完成多个WebRTC终端中每一个WebRTC终端与所述媒体网关之间的媒体协商,以及所述媒体网关与所述多点控制单元之间的媒体协商,利用媒体协商结果建立所述媒体网关与多个WebRTC终端中每一个WebRTC终端之间的媒体通道,以及所述媒体网关与所述多点控制单元之间的媒体通道;或者根据所述应用服务器的协助,分别完成多个WebRTC终端中每一个WebRTC终端与所述媒体网关之间的媒体协商,以及所述媒体网关与所述多点控制单元之间的媒体协商,利用媒体协商结果建立多个WebRTC终端中每一个WebRTC终端与所述媒体网关的经所述ICE中继服务器的媒体通道,以及所述媒体网关与所述多点控制单元之间的媒体通道。12.根据权利要求8所述的方法,其特征在于,所述媒体处理单元与所述应用服务器进行交互,创建多方会议,进行多方媒体合成与展示,包括:所述媒体处理单元接收所述应用服务器发送的创建会议的请求,向所述媒体处理单元返回会议连接相关的信息,接收所述应用服务器发送的媒体合成与展示策略信息,根据所述媒体合成与展示策略信息完成多方会议的媒体流合成,并利用所述媒体处理单元与多方会议中各WebRTC终端之间的媒体连接完成媒体流分发。13.一种基于网页的实时通信WebRTC的媒体处理方法,其特征在于,WebRTC终端执行以下处理:参与多方会议的每个WebRTC终端根据应用服务器的协助建立与媒体处理单元的媒体连接;在所述媒体处理单元建立所述多方会议后,所述多方会议中的每个
\tWebRTC终端向所述媒体处理单元发送一路媒体流,以及接收媒体处理单元下发的一路合成后的媒体流。14.根据权利要求13所述的方法,其特征在于,所述方法还包括,作为所述多方会议主持人的WebRTC终端先与一个参与会议的WebRTC终端建立点对点实时多媒体通信,在需要由两方转向多方通信时,向所述应用服务器发送决定将其他一个或多个第三方WebRTC终端加入通信的消息。15.根据权利要求13所述的方法,其特征在于,所述媒体处理单元包括媒体服务器;所述参与多方会议的每个WebRTC终端根据应用服务器的协助建立与媒体处理单元的媒体连接,包括:所述参与多方会议的每个WebRTC终端根据应用服务器的协助完成与所述媒体服务器之间的媒体协商,利用所述媒体协商的结果建立本WebRTC终端与所述媒体服务器双方之间的媒体通道;或者所述参与多方会议的每个WebRTC终端根据应用服务器的协助完成与所述媒体服务器之间的媒体协商,利用所述媒体协商的结果建立本WebRTC终端与所述媒体服务器双方之间的经交互式连接建立ICE中继服务器的媒体通道。16.根据权利要求13所述的方法,其特征在于,所述媒体处理单元包括媒体网关和多点控制单元;所述参与多方会议的每个WebRTC终端根据应用服务器的协助建立与媒体处理单元的媒体连接,包括:所述参与多方会议的每个WebRTC终端根据应用服务器的协助完成与所述媒体网关之间的媒体协商,利用所述媒体协商的结果建立本WebRTC终端与所述媒体网关双方之间的媒体通道;或者所述参与多方会议的每个WebRTC终端根据应用服务器的协助完成与所述媒体网关之间的媒体协商,利用所述媒体协商的结果建立本WebRTC终端与所述媒体网关双方之间的经ICE中继服务器的媒体通道。17.一种基于网页的实时通信WebRTC的媒体处理装置,位于应用服务器,其特征在于,所述装置包括第一媒体连接建立模块以及会议建立控制模块,其中:所述第一媒体连接建立模块,用于在接收到第一WebRTC终端决定将其他一个或多个...

【专利技术属性】
技术研发人员:李从兵
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1