会议混音方法、终端和媒体资源服务器转让专利

申请号 : CN201210018793.0

文献号 : CN103220258B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周日明

申请人 : 华为技术有限公司

摘要 :

本发明提供一种会议混音方法、终端和媒体资源服务器,方法包括:向媒体资源服务器MRS发送语音数据包,在所述语音数据包中携带终端的能量值,所述能量值用于标识所述终端的本地语音音量;接收所述MRS发送的所述终端自身对应的有效语音数据包,所述有效语音数据包为所述MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;对所述终端自身对应的有效语音数据包进行混音处理。终端包括第一发送模块、第一接收模块和混音模块。媒体资源服务器包括第二接收模块、选择模块和第三发送模块。本发明大大减少了UE和MRS之间网络传输带宽的消耗。

权利要求 :

1.一种会议混音方法,其特征在于,包括:

向媒体资源服务器MRS发送语音数据包,在所述语音数据包中携带终端的能量值,所述能量值用于标识所述终端的本地语音音量;

接收所述MRS发送的所述终端自身对应的有效语音数据包,所述有效语音数据包为所述MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;

对所述终端自身对应的有效语音数据包进行混音处理;

所述方法还包括:向所述MRS发送第一个语音数据包,所述第一个语音数据包包含所述终端的能量值,且不包含所述终端的语音数据;

所述向MRS发送语音数据包,在所述语音数据包中携带终端的能量值具体为:在接收到所述MRS发送的有效确认消息后,向所述MRS发送语音数据包,在所述语音数据包中携带终端的能量值和所述终端的语音数据。

2.根据权利要求1所述的方法,其特征在于,当存在级联MRS时,所述接收所述MRS发送的所述终端自身对应的有效语音数据包,所述有效语音数据包为所述MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包具体为:接收所述级联MRS中底级MRS发送的所述终端自身对应的有效语音数据包;其中,所述有效语音数据包为级联MRS中顶级MRS根据各能量值,从所述顶级MRS的各下级MRS发送的语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;所述级联MRS中各级MRS分别将接收到的所述各MRS的下级MRS发送的语音数据包中音量最大的预设数量的语音数据对应的语音数据包,发送到所述各MRS的上级MRS。

3.一种会议混音方法,其特征在于,包括:

分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值,各所述能量值分别用于标识所述各终端的本地语音音量;

根据所述各能量值从所述各语音数据包中选择音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包;

将与所述各终端对应的有效语音数据包分别发送到所述各终端,分别由所述各终端进行混音处理;

所述方法还包括:分别接收所述各终端发送的第一个语音数据包,各所述第一个语音数据包分别包含所述各终端的能量值,且不包含所述终端的语音数据;

所述分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值具体为:在向各终端发送有效确认消息后,分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值和所述各终端的语音数据。

4.根据权利要求3所述的方法,其特征在于,当存在级联MRS时,所述分别接收各终端发送的语音数据包具体为:所述级联MRS中底级MRS分别接收各终端发送的语音数据包;

所述根据所述各能量值从所述各语音数据包中选择音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包具体为:所述级联MRS中顶级MRS根据各能量值,从所述顶级MRS的各下级MRS发送的语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包;其中,所述级联MRS中各级MRS分别将接收到的所述各MRS的下级MRS发送的语音数据包中音量最大的预设数量的语音数据对应的语音数据包,发送到所述各MRS的上级MRS。

5.一种终端,其特征在于,包括:

第一发送模块,用于向媒体资源服务器MRS发送语音数据包,在所述语音数据包中携带终端的能量值,所述能量值用于标识所述终端的本地语音音量;

第一接收模块,用于接收所述MRS发送的所述终端自身对应的有效语音数据包,所述有效语音数据包为所述MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;

混音模块,用于对所述终端自身对应的有效语音数据包进行混音处理;

第二发送模块,用于向所述MRS发送第一个语音数据包,所述第一个语音数据包包含所述终端的能量值,且不包含所述终端的语音数据;

所述第一发送模块具体用于在接收到所述MRS发送的有效确认消息后,向所述MRS发送语音数据包,在所述语音数据包中携带终端的能量值和所述终端的语音数据。

6.根据权利要求5所述的终端,其特征在于,当存在级联MRS时,所述第一接收模块具体用于接收所述级联MRS中底级MRS发送的所述终端自身对应的有效语音数据包;其中,所述有效语音数据包为级联MRS中顶级MRS根据各能量值,从所述顶级MRS的各下级MRS发送的语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;所述级联MRS中各级MRS分别将接收到的所述各MRS的下级MRS发送的语音数据包中音量最大的预设数量的语音数据对应的语音数据包,发送到所述各MRS的上级MRS。

7.一种媒体资源服务器,其特征在于,包括:

第二接收模块,用于分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值,各所述能量值分别用于标识所述各终端的本地语音音量;

选择模块,用于根据所述各能量值从所述各语音数据包中选择音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包;

第三发送模块,用于将与所述各终端对应的有效语音数据包分别发送到所述各终端,分别由所述各终端进行混音处理;

第三接收模块,用于分别接收所述各终端发送的第一个语音数据包,各所述第一个语音数据包分别包含所述各终端的能量值,且不包含所述终端的语音数据;

所述第二接收模块具体用于在向各终端发送有效确认消息后,分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值和所述各终端的语音数据。

8.根据权利要求7所述的服务器,其特征在于,当存在级联MRS时,所述第二接收模块具体用于由级联MRS中底级MRS分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值,各所述能量值分别用于标识所述各终端的本地语音音量;

所述选择模块具体用于由所述级联MRS中顶级MRS根据各能量值,从所述顶级MRS的各下级MRS发送的语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包;其中,所述级联MRS中各级MRS分别将接收到的所述各MRS的下级MRS发送的语音数据包中音量最大的预设数量的语音数据对应的语音数据包,发送到所述各MRS的上级MRS。

说明书 :

会议混音方法、终端和媒体资源服务器

技术领域

[0001] 本发明涉及通信技术,尤其涉及一种会议混音方法、终端和媒体资源服务器。

背景技术

[0002] 实时传输协议(Real-time Transfer Protocol;以下简称:RTP)为数据提供了具有实时特征的端对端传送服务,如在组播或单播网络服务下的交互式视频、音频或模拟数据。另外,应用程序也在用户数据包协议(User Datagram Protocol;以下简称:UDP)上运行RTP,以便使用多路结点和校验服务。RTP和UDP均提供了传输层协议的功能,但RTP可以与其他适合的底层网络或传输协议一起使用;且如果底层网络提供组播方式,则RTP可以使用该组播表传输数据到多个目的地。RTP作为一种网络传输协议,被广泛地应用于音频和视频会议中。
[0003] 在现有技术中的会议混音方案中,图1为现有技术中会议混音方法的场景示意图,如图1所示,每个终端(User Equipment;以下简称:UE)将自己的语音流发给媒体资源服务器(Media Resource Server;以下简称:MRS),即UE A、UE B、UE C、UE D分别将自己的语音流发送给MRS;MRS将除各终端自身之外的所有终端的语音流下发给各终端,终端收到会议中其他成员的语音后,在本地完成混音后播放,即MRS将UE B、UE C和UE D的语音流发给UE A,UE A在本地混音后播放;MRS将UEA、UE C和UE D的语音流发给UE B,UE B在本地混音后播放;MRS将UE A、UE B和UE D的语音流发给UE C,UE C在本地混音后播放;MRS将UE A、UE B和UE C的语音流发给UE D,UE D在本地混音后播放。现有技术中的会议混音方案无需对语音媒体进行解码和编码,对服务器的性能消耗较少。
[0004] 然而,从上述图1中可以看出,假设单路语音的带宽为w,如果有N方成员加入会议,则UE与服务器之间消耗的网络传输带宽为N*N*w,可见,现有技术中的会议混音方案在UE和服务器之间的网络传输带宽消耗很大。

发明内容

[0005] 本发明的第一个方面是提供一种会议混音方法,包括:
[0006] 向媒体资源服务器MRS发送语音数据包,在所述语音数据包中携带终端的能量值,所述能量值用于标识所述终端的本地语音音量;
[0007] 接收所述MRS发送的所述终端自身对应的有效语音数据包,所述有效语音数据包为所述MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;
[0008] 对所述终端自身对应的有效语音数据包进行混音处理。
[0009] 本发明的另一个方面是提供一种会议混音方法,包括:
[0010] 分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值,各所述能量值分别用于标识所述各终端的本地语音音量;
[0011] 根据所述各能量值从所述各语音数据包中选择音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包;
[0012] 将与所述各终端对应的有效语音数据包分别发送到所述各终端,分别由所述各终端进行混音处理。
[0013] 本发明的又一个方面是提供一种终端,包括:
[0014] 第一发送模块,用于向媒体资源服务器MRS发送语音数据包,在所述语音数据包中携带终端的能量值,所述能量值用于标识所述终端的本地语音音量;
[0015] 第一接收模块,用于接收所述MRS发送的所述终端自身对应的有效语音数据包,所述有效语音数据包为所述MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;
[0016] 混音模块,用于对所述终端自身对应的有效语音数据包进行混音处理。
[0017] 本发明的再一个方面是提供一种媒体资源服务器,包括:
[0018] 第二接收模块,用于分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值,各所述能量值分别用于标识所述各终端的本地语音音量;
[0019] 选择模块,用于根据所述各能量值从所述各语音数据包中选择音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包;
[0020] 第三发送模块,用于将与所述各终端对应的有效语音数据包分别发送到所述各终端,分别由所述各终端进行混音处理。
[0021] 本发明的技术效果是:通过向MRS发送携带UE的能量值的语音数据包,并接收MRS返回的UE自身对应的有效语音数据包,有效语音数据包为MRS选择的音量最大的预设数量的语音数据包,并对UE自身对应的有效语音数据包进行混音处理;本实施例只向UE下发有效语音数据包,与现有技术相比,大大减少了UE和MRS之间网络传输带宽的消耗。

附图说明

[0022] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0023] 图1为现有技术中会议混音方法的场景示意图;
[0024] 图2为本发明会议混音方法实施例一的流程图;
[0025] 图3为本发明会议混音方法实施例一中RTP头的结构示意图;
[0026] 图4为本发明会议混音方法实施例一的级联场景示意图;
[0027] 图5为本发明会议混音方法实施例一的普通场景示意图;
[0028] 图6为本发明会议混音方法实施例二的流程图;
[0029] 图7为本发明会议混音方法实施例三的信令图;
[0030] 图8为本发明会议混音方法实施例四的信令图;
[0031] 图9为本发明会议混音方法实施例四的场景示意图;
[0032] 图10为本发明会议混音方法实施例五的信令图;
[0033] 图11为本发明终端实施例一的结构示意图;
[0034] 图12为本发明终端实施例二的结构示意图;
[0035] 图13为本发明媒体资源服务器实施例一的结构示意图;
[0036] 图14为本发明媒体资源服务器实施例二的结构示意图。

具体实施方式

[0037] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0038] 图2为本发明会议混音方法实施例一的流程图,如图2所示,本发明提供了一种会议混音方法,本实施例从终端一侧对本发明的技术方案进行说明,本实施例可以具体包括如下步骤:
[0039] 步骤201,向MRS发送语音数据包,在所述语音数据包中携带终端的能量值,所述能量值用于标识所述终端的本地语音音量。
[0040] 本步骤为会议中的各UE向MRS发送语音数据包,该语音数据包的格式为RTP格式,在该语音数据包中分别携带各UE的能量值,该能量值用于标识UE的本地语音音量。本实施例可以在该RTP格式的语音数据包中扩展一个字段,将UE的能量值携带在该扩展字段中发送到MRS。
[0041] 具体地,本实施例中的能量值携带在所述语音数据包的包头中设置的扩展字段中。图3为本发明会议混音方法实施例一中RTP头的结构示意图,如图3所示,本实施例中的语音数据包均采用RTP协议的报文结构,下述描述中的RTP包即为语音数据包。其中,参与源(Contributing Source;以下简称:CSRC)标识(identifiers)列表的字段是可选的,仅在混合器插入时出现。其中,版本(V)字段占2位,用于标识RTP的版本。填充标识(P)字段占1位,如设置填充位,则在包尾将包含附加填充字,其不属于有效载荷;填充的最后一个八进制包含应该忽略的八进制计数;某些加密算法需要固定大小的填充字,或为在底层协议数据单元中携带几个RTP包。扩展(X)字段占1位,如设置扩展位,固定头后跟一个头扩展。CSRC计数(CC)字段占4位,CSRC计数包括紧接在固定头后CSRC标识符的个数。标记(M)字段占1位,标记解释由设置定义,目的在于允许重要事件在包流中标记出来;设置可定义其他标示位,或通过改变位数量来指定没有标记位。载荷类型(PT)字段占7位,记录后面资料使用哪种编码器(Codec),接收器(receiver)端找出相应的解码器(decoder)进行解码。系列号(sequence number)占16位,系列号随每个RTP包而增加1,由接收者用来探测包损失;系列号初值是随机的,使对加密的文本攻击更加困难。时标(timestamp)占32位,时标反映RTP数据包中第一个八进制数的采样时刻,采样时刻必须从单调、线性增加的时钟导出,以允许同步与抖动计算。时标可以让receiver端知道在正确的时间将资料播放出来。同步源(Synchronization Source;以下简称:SSRC)标识符(identifier)字段占32位,用于标识同步源;该标识不是随机选择的,目的在于使同一RTP包连接中没有两个同步源具有相同的SSRC标识;尽管多个源选择同一个标识的概率很低,所有RTP实现都必须探测并解决冲突;如源改变源传输地址,也必须选择一个新SSRC标识以避免插入成环行源。CSRC identifiers列表字段占0到15项,每项32位;CSRC identifiers列表表示包内的对载荷起作用的源;标识数量由CC字段给出;如超出15个作用源,也仅标识15个;CSRC标识由混合器插入,采用作用源的SSRC标识。本实施例在每个RTP包的包头设置扩展位,其中,P字段设置为1,表示该报文结构需要扩展,填充(padding)字段的值为3,即padding=3,表示该字段前面的3个字节为扩展位,padding字段前面的两个字节即为RTP包需要进行扩展的音量(loud)字段,该loud字段从0开始,最大可以标识256*256*256个音量差别。即在本实施例中,将各UE的能量值携带在图3中RTP包头的扩展字段loud中,发送到MRS。
[0042] 步骤202,接收所述MRS发送的所述终端自身对应的有效语音数据包,所述有效语音数据包为所述MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包。
[0043] 各UE在向MRS发送完语音数据包后,各UE分别接收MRS发送的各UE自身对应的有效语音数据包。即在本实施例中,MRS向各UE发送的语音数据包并非其接收到的除各UE自身的语音数据包之外的所有语音数据包,而只发送各UE自身对应的有效语音数据包。其中,有效语音数据包为MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包,此处的预设数量可以根据实际情况确定,如设置为2,则MRS从接收到的所有语音数据包中选择音量最大的两路语音数据对应的语音数据包作为有效语音数据包。此处与各UE自身对应的有效语音数据包为MRS选择的有效数据包中除UE自身的语音数据包之外的有效语音数据包。例如,假设UE A、UE B和UE C分别向MRS发送各自的语音数据包RTP1、RTP2和RTP3,RTP1、RTP2和RTP3中携带的能量值分别为2db、5db和8db,MRS选择的有效数据包为RTP2和RTP3,则MRS只向UE A下发RTP2和RTP3,只向UE B下发RTP3,只向UE C下发RTP2。
[0044] 进一步地,在本实施例中,由于在终端实现会议混音功能,MRS只做数据包的转发,不需要对语音数据包进行解码和编码处理,因此MRS的性能消耗很少,从而可以支持大容量能力可以支持大容量会议,即本实施例可以支持MRS级联的场景。当存在级联MRS时,本实施例中的上述步骤202可以具体为:接收所述级联MRS中底级MRS发送的所述终端自身对应的有效语音数据包;其中,所述有效语音数据包为级联MRS中顶级MRS根据各能量值,从所述顶级MRS的各下级MRS发送的语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;所述级联MRS中各级MRS分别将接收到的所述各MRS的下级MRS发送的语音数据包中音量最大的预设数量的语音数据对应的语音数据包,发送到所述各MRS的上级MRS。具体地,各UE将语音数据包发送到级联MRS中底级MRS,底级MRS从接收到的语音数据包中选择音量最大的两路语音数据对应的语音数据包作为本级的有效语音数据包;底级MRS将本级的有效语音数据包发送到其上级MRS,该上级MRS从接收到的其对应的各下级MRS发送的语音数据包中,选择音量最大的两路语音数据对应的语音数据包作为本级的有效语音数据包;如果存在多级MRS时,则以此类推,依次由下级MRS将选择的本级的有效语音数据包发送到其上级MRS,直到级联MRS中顶级MRS为止。顶级MRS在接收到其下级MRS发送的语音数据包后,从中选择音量最大的两路语音数据对应的语音数据包作为级联MRS的有效语音数据包;
顶级MRS将该有效语音数据包发送到其下级MRS,如果存在多级级联,则依次由上级MRS向其下级MRS下发该有效语音数据包,直到将有效语音数据包发送到底级MRS为止。底级MRS再根据其连接的各UE,分别向各UE发送UE自身对应的有效语音数据包。图4为本发明会议混音方法实施例一的级联场景示意图,如图4所示,假设存在MRS的两级级联,即顶级MRS1以及底级MRS2和MRS3,UE分别向其连接的底级MRS发送语音数据包,MRS2和MRS3分别从接收到的语音数据包中选择音量最大的两路语音数据对应的语音数据包作为本级的有效语音数据包,底级MRS2和MRS3分别将本级的有效语音数据包发送到MRS1;MRS1从接收到的四个语音数据包中选择音量最大的两路语音数据对应的语音数据包作为级联MRS的有效语音数据包;MRS1将级联MRS的两个有效语音数据包发送到MRS2和MRS3,MRS2和MRS3根据其相连的UE,分别向各UE发送各自对应的有效语音数据包。
[0045] 步骤203,对所述终端自身对应的有效语音数据包进行混音处理。
[0046] 各UE在接收到MRS下发的有效语音数据包后,各UE分别对自身对应的有效数据包进行混音处理。仍以上述示例为例,UE A对RTP2和RTP3进行混音处理,UE B对RTP3进行混音处理,UE C对RTP2进行混音处理后播放。图5为本发明会议混音方法实施例一的普通场景示意图,如图5所示,假设单路语音的带宽为w,预设数量为2,如果有N方成员加入会议,则UE与服务器之间消耗的网络传输带宽最多为3*N*w,由此可见,本实施例与现有技术相比,UE与MRS之间消耗的网络传输带宽明显减少。
[0047] 更进一步地,在本实施例中,在UE发送语音数据包时,在语音数据包的包头的扩展字段中携带UE的能量值;如果在MRS上对各UE的能量值进行比较之后,其中某个UE的语音数据不属于音量最大的两路数据之一,则会造成该UE发送无效的语音数据包,即该语音数据包不会被MRS转发给其他UE,而是直接被丢弃。为了解决该问题,本实施例提供的会议混音方法还可以包括如下步骤:向所述MRS发送第一个语音数据包,所述第一个语音数据包包含所述终端的能量值。即在本实施例中,当UE每次向MRS发送第一个语音数据包时,只在该第一个语音数据包中包含该UE的能量值,而不携带任何语音数据。当MRS经过比较确定当前的最大音量和次大音量对应的有效语音数据包后,向各对应的UE发送有效确认消息。因此,在该进一步扩展的方案中,上述步骤201可以具体为:在接收到所述MRS发送的有效确认消息后,向所述MRS发送语音数据包,在所述语音数据包中携带终端的能量值和所述终端的语音数据。即UE在向MRS发送第一个语音数据包后,等待接收MRS发送的有效确认消息;当该UE接收到该有效确认消息后,表明该UE的语音数据包作为有效语音数据包向其他UE发送,则该UE才会向MRS发送包含自身能量值和语音数据的语音数据包;如果该UE在预设时间内一直未接收到MRS发送的有效确认消息,表明该UE的语音数据包不会作为有效语音数据包向其他UE发送,则该UE后续无需向MRS发送语音数据包。由此便解决了因某个UE的语音数据的音量小而发送无效语音数据包的问题,避免了资源的浪费。
[0048] 本实施例提供了一种会议混音方法,通过向MRS发送携带UE的能量值的语音数据包,并接收MRS返回的UE自身对应的有效语音数据包,有效语音数据包为MRS选择的音量最大的预设数量的语音数据包,并对UE自身对应的有效语音数据包进行混音处理;本实施例只向UE下发有效语音数据包,与现有技术相比,大大减少了UE和MRS之间网络传输带宽的消耗。
[0049] 图6为本发明会议混音方法实施例二的流程图,如图6所示,本实施例提供了一种会议混音方法,本实施例从服务器一侧对本发明的技术方案进行说明,本实施例可以具体包括如下步骤:
[0050] 步骤601,分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值,各所述能量值分别用于标识所述各终端的本地语音音量。
[0051] 本步骤为MRS分别接收各UE发送的语音数据包,该语音数据包的格式为RTP格式,在该语音数据包中分别携带各UE的能量值,该能量值用于标识UE的本地语音音量。本实施例可以在该RTP格式的语音数据包中扩展一个字段,将UE的能量值携带在该扩展字段。
[0052] 具体地,本实施例中的能量值携带在所述语音数据包的包头中设置的扩展字段中,具体可以参见上述图3所示,将各UE的能量值携带在图3中RTP包头的扩展字段loud中。
[0053] 步骤602,根据所述各能量值从所述各语音数据包中选择音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包。
[0054] MRS在接收到各语音数据包后,根据各语音数据包中携带的能量值,从这些语音数据包中选择音量最大的预设数量的语音数据对应的语音数据包,并将选择的预设数量的语音数据包作为有效语音数据包。此处的预设数量可以根据实际情况确定,如设置为2,则MRS从接收到的所有语音数据包中选择音量最大的两路语音数据对应的语音数据包作为有效语音数据包。本实施例中的能量值的大小用于反映UE的本地语音音量的大小,此处选择音量最大的语音数据即为选择其中携带的能量值最大的语音数据包。
[0055] 步骤603,将与所述各终端对应的有效语音数据包分别发送到所述各终端,分别由所述各终端进行混音处理。
[0056] 在通过比较选出预设数量的有效语音数据包后,MRS将与各UE对应的有效语音数据包分别发送到各UE,分别由所述各终端进行混音处理。即在本实施例中,MRS向各UE发送的语音数据包并非其接收到的除各UE自身的语音数据包之外的所有语音数据包,而只发送各UE自身对应的有效语音数据包。其中,与各UE自身对应的有效语音数据包为MRS选择的有效数据包中除UE自身的语音数据包之外的有效语音数据包。例如,假设UE A、UE B和UE C分别向MRS发送各自的语音数据包RTP1、RTP2和RTP3,RTP1、RTP2和RTP3中携带的能量值分别为2db、5db和8db,MRS选择的有效数据包为RTP2和RTP3,则MRS只向UE A下发RTP2和RTP3,只向UE B下发RTP3,只向UE C下发RTP2。各UE在接收到MRS下发的有效语音数据包后,各UE分别对自身对应的有效数据包进行混音处理。
[0057] 进一步地,在本实施例中,当存在级联MRS时,本实施例中的上述步骤601可以具体为:级联MRS中底级MRS接收各终端发送的语音数据包。上述步骤602可以具体为:所述级联MRS中顶级MRS根据各能量值,从所述顶级MRS的各下级MRS发送的语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包;其中,所述级联MRS中各级MRS分别将接收到的所述各MRS的下级MRS发送的语音数据包中音量最大的预设数量的语音数据对应的语音数据包,发送到所述各MRS的上级MRS。具体地,各UE将语音数据包发送到级联MRS中底级MRS,底级MRS从接收到的语音数据包中选择音量最大的两路语音数据对应的语音数据包作为本级的有效语音数据包;底级MRS将本级的有效语音数据包发送到其上级MRS,该上级MRS从接收到的其对应的各下级MRS发送的语音数据包中,选择音量最大的两路语音数据对应的语音数据包作为本级的有效语音数据包;如果存在多级MRS时,则以此类推,依次由下级MRS将选择的本级的有效语音数据包发送到其上级MRS,直到级联MRS中顶级MRS为止。顶级MRS在接收到其下级MRS发送的语音数据包后,从中选择音量最大的两路语音数据对应的语音数据包作为级联MRS的有效语音数据包;顶级MRS将该有效语音数据包发送到其下级MRS,如果存在多级级联,则依次由上级MRS向其下级MRS下发该有效语音数据包,直到将有效语音数据包发送到底级MRS为止。底级MRS再根据其连接的各UE,分别向各UE发送UE自身对应的有效语音数据包。
[0058] 更进一步地,在本实施例中,为了解决因某个UE的语音数据的音量小而发送无效语音数据包的问题,本实施例还可以包括下述步骤:分别接收所述各终端发送的第一个语音数据包,各所述第一个语音数据包分别包含所述各终端的能量值,且不包含所述终端的语音数据。即在本实施例中,当UE每次向MRS发送第一个语音数据包时,只在该第一个语音数据包中包含该UE的能量值,而不携带任何语音数据。因此,在该进一步扩展的方案中,上述步骤601可以具体为:在向各终端发送有效确认消息后,分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值和所述各终端的语音数据。即当MRS经过比较确定当前的最大音量和次大音量对应的有效语音数据包后,向各对应的UE发送有效确认消息。然后MRS才接收各UE发送的语音数据包,在后续接收的语音数据包中,携带各UE的能量值和语音数据。
[0059] 本实施例提供了一种会议混音方法,通过接收各UE发送的携带UE的能量值的语音数据包,根据各能量值选择音量最大的预设数量的语音数据对应的语音数据包作为有效语音数据包,并向各UE返回各UE自身对应的有效语音数据包,由各UE对自身对应的有效语音数据包进行混音处理;本实施例由于在终端实现会议混音功能,MRS只做数据包的转发,不需要对语音数据包进行解码和编码处理,因此MRS的性能消耗很少,从而可以支持大容量能力;同时,本实施例只向UE下发有效语音数据包,与现有技术相比,大大减少了UE和MRS之间网络传输带宽的消耗。
[0060] 图7为本发明会议混音方法实施例三的信令图,如图7所示,本实施例提供了一种会议混音方法,本实施例应用于不存在级联的场景中,假设会议中包括三个UE:UE1、UE2和UE3,可以具体包括如下步骤:
[0061] 步骤701,UE1将自身的语音数据包RTP1发送到MRS,在RTP1包头的扩展字段(即loud字段)中携带UE1的能量值,即loud=5db。
[0062] 步骤702,UE2将自身的语音数据包RTP2发送到MRS,在RTP2包头的扩展字段(即loud字段)中携带UE2的能量值,即loud=2db。
[0063] 步骤703,UE3将自身的语音数据包RTP3发送到MRS,在RTP3包头的扩展字段(即loud字段)中携带UE3的能量值,即loud=0db。
[0064] 步骤704,MRS比较各语音数据包中的能量值,选择音量最大的两路语音数据对应的语音数据包作为有效语音数据包,即选择RTP1和RTP2作为有效语音数据包。
[0065] 步骤705,MRS将UE1对应的有效语音数据包下发给UE1,即将RTP2下发给UE1。
[0066] 步骤706,UE1在本地对RTP2进行混音后播放。
[0067] 步骤707,MRS将UE2对应的有效语音数据包下发给UE2,即将RTP1下发给UE2。
[0068] 步骤708,UE2在本地对RTP1进行混音后播放。
[0069] 步骤709,MRS将UE3对应的有效语音数据包下发给UE3,即将RTP1和RTP2下发给UE3。
[0070] 步骤710,UE3在本地对RTP1和RTP2进行混音后播放。
[0071] 在本实施例中,上述步骤701、702和703之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行;上述步骤705、707和709之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行。
[0072] 本实施例提供了一种会议混音方法,通过各UE向MRS发送携带各UE的能量值的语音数据包,MRS根据各能量值选择音量最大的预设数量的语音数据对应的语音数据包作为有效语音数据包,并向各UE返回各UE自身对应的有效语音数据包,由各UE对自身对应的有效语音数据包进行混音处理;本实施例只向UE下发有效语音数据包,与现有技术相比,大大减少了UE和MRS之间网络传输带宽的消耗。
[0073] 图8为本发明会议混音方法实施例四的信令图,如图8所示,本实施例提供了一种会议混音方法,本实施例应用于存在级联的场景中,图9为本发明会议混音方法实施例四的场景示意图,如图9所示,假设会议中包括六个UE:UE1、UE2、UE3、UE4、UE5和UE6,包括两级MRS,即顶级MRS1以及底级MRS2和MRS3。本实施例可以具体包括如下步骤:
[0074] 步骤801,UE1将自身的语音数据包RTP1发送到MRS2,在RTP1包头的扩展字段(即loud字段)中携带UE1的能量值,即loud=5db。
[0075] 步骤802,UE2将自身的语音数据包RTP2发送到MRS2,在RTP2包头的扩展字段中携带UE2的能量值,即loud=0db。
[0076] 步骤803,UE3将自身的语音数据包RTP3发送到MRS2,在RTP3包头的扩展字段中携带UE3的能量值,即loud=1db。
[0077] 步骤804,UE4将自身的语音数据包RTP4发送到MRS3,在RTP4包头的扩展字段中携带UE4的能量值,即loud=1db。
[0078] 步骤805,UE5将自身的语音数据包RTP5发送到MRS3,在RTP5包头的扩展字段中携带UE5的能量值,即loud=8db。
[0079] 步骤806,UE6将自身的语音数据包RTP6发送到MRS3,在RTP6包头的扩展字段中携带UE6的能量值,即loud=2db。
[0080] 步骤807,MRS2比较各语音数据包RTP1、RTP2、RTP3中的能量值,选择音量最大的两路语音数据对应的语音数据包作为本级的有效语音数据包,即选择RTP1和RTP3作为本级的有效语音数据包。
[0081] 步骤808,MRS3比较各语音数据包RTP4、RTP5、RTP6中的能量值,选择音量最大的两路语音数据对应的语音数据包作为本级的有效语音数据包,即选择RTP5和RTP6作为本级的有效语音数据包。
[0082] 步骤809,MRS2将本级的有效语音数据包RTP1和RTP3发送到MRS1。
[0083] 步骤810,MRS3将本级的有效语音数据包RTP5和RTP6发送到。
[0084] 步骤811,MRS1比较各语音数据包RTP1、RTP3、RTP5和RTP6中的能量值,选择音量最大的两路语音数据对应的语音数据包作为有效语音数据包,即选择RTP1和RTP5作为有效语音数据包。
[0085] 步骤812,MRS1将RTP1和RTP5下发给MRS2。
[0086] 步骤813,MRS1将RTP1和RTP5下发给MRS3。
[0087] 步骤814,MRS2将UE1对应的有效语音数据包下发给UE1,即将RTP5下发给UE1。
[0088] 步骤815,UE1在本地对RTP5进行混音后播放。
[0089] 步骤816,MRS2将UE2对应的有效语音数据包下发给UE2,即将RTP1和RTP5下发给UE2。
[0090] 步骤817,UE2在本地对RTP1和RTP5进行混音后播放。
[0091] 步骤818,MRS2将UE3对应的有效语音数据包下发给UE3,即将RTP1和RTP5下发给UE3。
[0092] 步骤819,UE3在本地对RTP1和RTP5进行混音后播放。
[0093] 步骤820,MRS3将UE4对应的有效语音数据包下发给UE4,即将RTP1和RTP5下发给UE4。
[0094] 步骤821,UE4在本地对RTP1和RTP5进行混音后播放。
[0095] 步骤822,MRS3将UE5对应的有效语音数据包下发给UE5,即将RTP1下发给UE5。
[0096] 步骤823,UE5在本地对RTP1进行混音后播放。
[0097] 步骤824,MRS3将UE6对应的有效语音数据包下发给UE6,即将RTP1和RTP5下发给UE6。
[0098] 步骤825,UE6在本地对RTP1和RTP5进行混音后播放。
[0099] 在本实施例中,上述步骤801-806之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行;上述步骤807和808之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行;上述步骤809和810之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行;上述步骤812和813之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行;上述步骤814、816、818、820、822和824之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行。
[0100] 本实施例提供了一种会议混音方法,通过各UE向级联MRS中底级MRS发送携带各UE的能量值的语音数据包,底级MRS根据各能量值选择音量最大的预设数量的语音数据对应的语音数据包作为本级的有效语音数据包,各底级MRS将选出的有效语音数据包发送到顶级MRS,顶级MRS根据各能量值选择音量最大的预设数量的语音数据对应的语音数据包作为有效语音数据包,并将有效语音数据包下发给向底级MRS,底级MRS向各UE返回各UE自身对应的有效语音数据包,由各UE对自身对应的有效语音数据包进行混音处理;本实施例只向UE下发有效语音数据包,与现有技术相比,大大减少了UE和MRS之间网络传输带宽的消耗。
[0101] 图10为本发明会议混音方法实施例五的信令图,如图10所示,本实施例提供了一种会议混音方法,本实施例应用于不存在级联的场景中,假设会议中包括三个UE:UE1、UE2和UE3,可以具体包括如下步骤:
[0102] 步骤1001,UE1向MRS发送第一个语音数据包RTP1,在RTP1包头的扩展字段(即loud字段)中只包含UE1的能量值,即loud=2db,不包含UE1的语音数据。
[0103] 步骤1002,UE2向MRS发送第一个语音数据包RTP2,在RTP2包头的扩展字段中只包含UE2的能量值,即loud=1db,不包含UE2的语音数据。
[0104] 步骤1003,UE3向MRS发送第一个语音数据包RTP3,在RTP3包头的扩展字段中只包含UE3的能量值,即loud=8db,不包含UE3的语音数据。
[0105] 步骤1004,MRS比较各语音数据包中的能量值,获取音量最大的两路语音数据对应的UE,即UE1和UE3。
[0106] 步骤1005,MRS向UE1发送有效确认消息。
[0107] 步骤1006,MRS向UE3发送有效确认消息。
[0108] 步骤1007,UE1将自身的语音数据包RTP1’发送到MRS,在RTP1’包头的扩展字段中携带UE1的能量值和UE1的语音数据。
[0109] 步骤1008,UE3将自身的语音数据包RTP3’发送到MRS,在RTP3’包头的扩展字段中携带UE3的能量值和UE3的语音数据。
[0110] 步骤1009,MRS将UE1对应的有效语音数据包下发给UE1,即将RTP3’下发给UE1。
[0111] 步骤1010,UE1在本地对RTP3’进行混音后播放。
[0112] 步骤1011,MRS将UE2对应的有效语音数据包下发给UE2,即将RTP1’和RTP3’下发给UE2。
[0113] 步骤1012,UE2在本地对RTP1’和RTP3’进行混音后播放。
[0114] 步骤1013,MRS将UE3对应的有效语音数据包下发给UE3,即将RTP1’下发给UE3。
[0115] 步骤1014,UE3在本地对RTP1’进行混音后播放。
[0116] 在本实施例中,上述步骤1001、1002和1003之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行;上述步骤1005和1006之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行;上述步骤1007和1008之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行;上述步骤1009、1011和1013之间的时序关系并不限于上面描述,还可以采用其他的时序关系,或者同时执行。
[0117] 本实施例提供了一种会议混音方法,通过各UE向MRS发送只包含各UE的能量值的语音数据包,MRS根据各能量值选择音量最大的预设数量的语音数据对应的UE,并向这些UE发送有效确认消息,接收到有效确认消息的各UE向MRS发送携带自身语音数据的语音数据包,MRS将接收到的语音数据包作为有效语音数据包,并返回各UE自身对应的有效语音数据包,由各UE对自身对应的有效语音数据包进行混音处理;本实施例只向UE下发有效语音数据包,与现有技术相比,大大减少了UE和MRS之间网络传输带宽的消耗。
[0118] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0119] 图11为本发明终端实施例一的结构示意图,如图11所示,本实施例提供了一种终端,可以具体执行上述方法实施例一中的各个步骤,此处不再赘述。本实施例提供的终端可以包括第一发送模块1101、第一接收模块1102和混音模块1103。其中,第一发送模块1101用于向媒体资源服务器MRS发送语音数据包,在所述语音数据包中携带终端的能量值,所述能量值用于标识所述终端的本地语音音量。第一接收模块1102用于接收所述MRS发送的所述终端自身对应的有效语音数据包,所述有效语音数据包为所述MRS从接收到的所有语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包。混音模块1103用于对所述终端自身对应的有效语音数据包进行混音处理。
[0120] 图12为本发明终端实施例二的结构示意图,如图12所示,本实施例提供了一种终端,可以具体执行上述方法实施例三、实施例四或实施例五中的各个步骤,此处不再赘述。本实施例提供的终端载上述图11的基础之上,当存在级联MRS时,第一接收模块1102可以具体用于接收所述级联MRS中底级MRS发送的所述终端自身对应的有效语音数据包;其中,所述有效语音数据包为级联MRS中顶级MRS根据各能量值,从所述顶级MRS的各下级MRS发送的语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包;所述级联MRS中各级MRS分别将接收到的所述各MRS的下级MRS发送的语音数据包中音量最大的预设数量的语音数据对应的语音数据包,发送到所述各MRS的上级MRS。
[0121] 进一步地,本实施例提供的终端还可以包括第二发送模块1104,第二发送模块1104用于向所述MRS发送第一个语音数据包,所述第一个语音数据包包含所述终端的能量值,且不包含所述终端的语音数据。第一发送模块1101具体用于在接收到所述MRS发送的有效确认消息后,向所述MRS发送语音数据包,在所述语音数据包中携带终端的能量值和所述终端的语音数据。
[0122] 具体地,本实施例中的能量值携带在所述语音数据包的包头中设置的扩展字段中。
[0123] 本实施例提供了一种终端,通过向MRS发送携带UE的能量值的语音数据包,并接收MRS返回的UE自身对应的有效语音数据包,有效语音数据包为MRS选择的音量最大的预设数量的语音数据包,并对UE自身对应的有效语音数据包进行混音处理;本实施例只向UE下发有效语音数据包,与现有技术相比,大大减少了UE和MRS之间网络传输带宽的消耗。
[0124] 图13为本发明媒体资源服务器实施例一的结构示意图,如图13所示,本实施例提供了一种媒体资源服务器,可以具体执行上述方法实施例二中的各个步骤,此处不再赘述。本实施例提供的媒体资源服务器可以包括第二接收模块1301、选择模块1302和第三发送模块1303。其中,第二接收模块1301用于分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值,各所述能量值分别用于标识所述各终端的本地语音音量。选择模块1302用于根据所述各能量值从所述各语音数据包中选择音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包。第三发送模块1303用于将与所述各终端对应的有效语音数据包分别发送到所述各终端,分别由所述各终端进行混音处理。
[0125] 图14为本发明媒体资源服务器实施例二的结构示意图,如图14所示,本实施例提供了一种媒体资源服务器,可以具体执行上述方法实施例三、实施例四或实施例五中的各个步骤,此处不再赘述。本实施例提供的媒体资源服务器载上述图13的基础之上,当存在级联MRS时,第二接收模块1301可以具体用于由级联MRS中底级MRS分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值,各所述能量值分别用于标识所述各终端的本地语音音量。选择模块1302可以具体用于由所述级联MRS中顶级MRS根据各能量值,从所述顶级MRS的各下级MRS发送的语音数据包中选择的音量最大的预设数量的语音数据对应的语音数据包,作为有效语音数据包;其中,所述级联MRS中各级MRS分别将接收到的所述各MRS的下级MRS发送的语音数据包中音量最大的预设数量的语音数据对应的语音数据包,发送到所述各MRS的上级MRS。
[0126] 进一步地,本实施例提供的媒体资源服务器还可以包括第三接收模块1304,第三接收模块1304可以用于分别接收所述各终端发送的第一个语音数据包,各所述第一个语音数据包分别包含所述各终端的能量值,且不包含所述终端的语音数据。第二接收模块1301可以具体用于在向各终端发送有效确认消息后,分别接收各终端发送的语音数据包,各所述语音数据包中分别携带所述各终端的能量值和所述各终端的语音数据。
[0127] 具体地,本实施例中的能量值携带在所述语音数据包的包头中设置的扩展字段中。
[0128] 本实施例提供了一种媒体资源服务器,通过接收各UE发送的携带UE的能量值的语音数据包,根据各能量值选择音量最大的预设数量的语音数据对应的语音数据包作为有效语音数据包,并向各UE返回各UE自身对应的有效语音数据包,由各UE对自身对应的有效语音数据包进行混音处理;本实施例只向UE下发有效语音数据包,与现有技术相比,大大减少了UE和MRS之间网络传输带宽的消耗。
[0129] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。