媒体流的传输方法及装置与流程

文档序号:16278941发布日期:2018-12-14 22:45阅读:310来源:国知局
媒体流的传输方法及装置与流程

本发明涉及集群通信技术领域,具体而言,涉及一种媒体流的传输方法及装置。

背景技术

基于lte技术的宽带集群通信(b-trunc)系统定义了基于td-lte技术的宽带集群增强技术,支持单呼、组呼等多种集群业务。图1是根据现有技术的宽带集群通讯系统的结构图,如图1所示,宽带集群通信b-trunc的系统组成如下图,包括:dc、宽带集群核心网tcn(其中,宽带集群核心网tcn包括:ehss和xgw、tcf/tmf、emme),下面还包括:enb和t-enb,enb与lte数据终端无线连接,t-enb与集群终端无线连接,其中,tcf负责集群业务的调度管理;tmf负责集群业务的数据传输;xgw支持集群业务承载管理(具体包括:sgw和pgw)、集群数据路由和转发;emme负责移动性管理和承载管理。

对于组呼业务,b-trunc系统的定义如下:“终端发起的在组成员内建立的半双工语音呼叫。在一个小区内,该组成员共享一个下行信道,可以听到话语权拥有方的语音,上行信道由一个获得话语权的组成员占用,组内其他成员可以申请话语权。组呼一般由发起方或系统释放结束”。

而随着集群系统在越来越多的行业中得以应用,用户对组呼的需求已经不限于只有一个用户可以讲话,允许组呼中多个用户同时讲话已经成为新的需求。例如3gpp的frmcs(futurerailwaymobilecommunicationsystem)对未来铁路通信的需求中就包括了“带有话权控制的多用户并行通过功能”。

其中,相关技术中的b-trunc系统的组呼,有tcf进行呼叫和话权决策,如果ue在话权被占用时申请话权,tcf根据话权策略进行:话权抢占,即先将当前的话权释放,再将话权授予申请的ue;或者,话权拒绝,即维持当前话权,拒绝本次话权申请。该方案涉及的b-trunc系统的组呼与传统集群的组呼类似,每个呼叫中同一时刻只允许一个成员获得话权,不支持多用户讲话。

针对上述相关技术中宽带集群通信b-trunc的每个呼叫中同一时刻不支持多用户讲话的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种媒体流的传输方法及装置,以至少解决相关技术中宽带集群通信b-trunc的每个呼叫中同一时刻不支持多用户讲话,导致的通讯效率较低的技术问题。

根据本发明实施例的一个方面,提供了一种媒体流的传输方法,包括:通过集群控制功能tcf模块确定拥有话权的多个主叫终端和未拥有话权的多个被叫终端;获取所述拥有话权的多个主叫终端中每个主叫终端的上行媒体流;按照预定混音规则对所述每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流;将所述多个混音媒体流传输至所述拥有话权的多个主叫终端和所述未拥有话权的多个被叫终端。

可选的,按照所述预定混音规则对所述每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流包括:依次将所述多个主叫终端中除主叫终端自身之外的每个主叫终端的上行媒体流进行混音操作,得到第一混音媒体流,其中,所述第一混音媒体流中包括与所述多个主叫终端数量相同的多个混音媒体流;将所述多个主叫终端中每个主叫终端的上行媒体流进行混音操作,得到第二混音媒体流;根据所述第一混音媒体流和所述第二混音媒体流得到所述多个混音媒体流。

可选的,将所述多个混音媒体流传输至所述拥有话权的多个主叫终端和所述未拥有话权的多个被叫终端包括:将所述第一混音媒体流传输至所述多个主叫终端;将所述第二混音媒体流传输至所述多个被叫终端。

可选的,通过集群控制功能tcf模块确定拥有话权的多个主叫终端包括:在接收到多个终端中的部分终端发送的话权申请消息后,统计当前拥有话权的主叫终端的数量;根据所述当前拥有话权的主叫终端的数量和话权终端阈值进行比较;在所述当前拥有话权的主叫终端的数量小于所述话权终端阈值的情况下,为发送所述话权申请消息的终端赋予话权。

可选的,在根据所述当前拥有话权的主叫终端的数量和话权终端阈值进行比较之后,上述媒体流的传输方法还包括:在所述当前拥有话权的主叫终端的数量超过所述话权终端阈值的情况下,向发送所述话权申请消息的终端发送话权申请失败消息。

可选的,在根据所述当前拥有话权的主叫终端的数量和话权终端阈值进行比较之后,上述媒体流的传输方法还包括:在所述当前拥有话权的主叫终端的数量超过所述话权终端阈值的情况下,获取所述话权申请消息中携带的发送所述话权申请消息的终端的标识;根据所述标识在所述集群控制功能tcf模块中查询发送话权申请消息的终端对应的优先级;根据所述优先级,确定拥有话权的多个主叫终端。

可选的,根据所述优先级,确定拥有话权的多个主叫终端包括:将拥有话权的主叫终端的优先级和发送所述话权申请消息的终端的优先级进行排序,得到优先级排序结果;根据所述优先级排序结果,确定拥有话权的多个主叫终端。

可选的,根据所述优先级排序结果,确定拥有话权的多个主叫终端包括:将所述优先级排序结果中最小的优先级对应的主叫终端的话权释放;为发送所述话权申请消息的终端赋予话权。

可选的,为发送所述话权申请消息的终端赋予话权包括:向发送所述话权申请消息的终端发送授权消息;根据所述授权消息赋予发送所述话权申请消息的终端话权。

可选的,在向发送所述话权申请消息的终端发送授权消息的同时,上述媒体流的传输方法还包括:向所述未拥有话权的多个被叫终端发送话权通知消息,其中,所述话权通知消息中携带有主叫终端的标识码。

根据本发明实施例的另外一个方面,还提供了一种媒体流的传输方法,包括:获取多个主叫终端的下行媒体流,其中,所述多个主叫终端是通过集群控制功能tcf模块确定的拥有话权的多个终端,所述多个主叫终端的下行媒体流是由所述tcf模块根据接收到的所述多个主叫终端的上行媒体流生成的;按照预定混音规则对所述多个主叫终端的下行媒体流进行混音操作,得到多个混音媒体流。

可选的,按照预定混音规则对所述多个主叫终端的下行媒体流进行混音操作,得到多个混音媒体流包括:所述多个主叫终端将除自身的上行媒体流生成的下行媒体流之外的下行媒体流进行混音操作,得到第三混音媒体流,其中,所述第三混音媒体流中包括与所述多个主叫终端数量相同的多个混音媒体流;将根据所述多个主叫终端的上行媒体流生成的下行媒体流进行混音操作,得到第四混音媒体流,其中,所述第四混音媒体流中包括与未拥有话权的多个被叫终端数量相同的多个混音媒体流;根据所述第三混音媒体流和所述第四混音媒体流得到所述多个混音媒体流。

根据本发明实施例的另外一个方面,还提供了一种媒体流的传输装置,包括:确定单元,用于通过集群控制功能tcf模块确定拥有话权的多个主叫终端和未拥有话权的多个被叫终端;第一获取单元,用于获取所述拥有话权的多个主叫终端中每个主叫终端的上行媒体流;第二获取单元,用于按照预定混音规则对所述每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流;传输单元,用于将所述多个混音媒体流传输至所述拥有话权的多个主叫终端和所述未拥有话权的多个被叫终端。

可选的,所述第二获取单元包括:第一获取子单元,用于依次将所述多个主叫终端中除主叫终端自身之外的每个主叫终端的上行媒体流进行混音操作,得到第一混音媒体流,其中,所述第一混音媒体流中包括与所述多个主叫终端数量相同的多个混音媒体流;第二获取子单元,用于将所述多个主叫终端中每个主叫终端的上行媒体流进行混音操作,得到第二混音媒体流;第三获取子单元,用于根据所述第一混音媒体流和所述第二混音媒体流得到所述多个混音媒体流。

可选的,所述传输单元包括:第一传输子单元,用于将所述第一混音媒体流传输至所述多个主叫终端;第二传输子单元,用于将所述第二混音媒体流传输至所述多个被叫终端。

可选的,所述确定单元包括:统计子单元,用于在接收到多个终端中的部分终端发送的话权申请消息后,统计当前拥有话权的主叫终端的数量;比较子单元,用于根据所述当前拥有话权的主叫终端的数量和话权终端阈值进行比较;赋予子单元,用于在所述当前拥有话权的主叫终端的数量小于所述话权终端阈值的情况下,为发送所述话权申请消息的终端赋予话权。

可选的,上述媒体流的传输装置还包括:发送子单元,用于在根据所述当前拥有话权的主叫终端的数量和话权终端阈值进行比较之后,在所述当前拥有话权的主叫终端的数量超过所述话权终端阈值的情况下,向发送所述话权申请消息的终端发送话权申请失败消息。

可选的,上述媒体流的传输装置还包括:第四获取子单元,用于在根据所述当前拥有话权的主叫终端的数量和话权终端阈值进行比较之后,在所述当前拥有话权的主叫终端的数量超过所述话权终端阈值的情况下,获取所述话权申请消息中携带的发送所述话权申请消息的终端的标识;查询子单元,用于根据所述标识在所述集群控制功能tcf模块中查询发送话权申请消息的终端对应的优先级;确定子单元,用于根据所述优先级,确定拥有话权的多个主叫终端。

可选的,所述确定子单元包括:获取模块,用于将拥有话权的主叫终端的优先级和发送所述话权申请消息的终端的优先级进行排序,得到优先级排序结果;确定模块,用于根据所述优先级排序结果,确定拥有话权的多个主叫终端。

可选的,所述确定模块包括:释放子模块,用于将所述优先级排序结果中最小的优先级对应的主叫终端的话权释放;第一赋予子模块,用于为发送所述话权申请消息的终端赋予话权。

可选的,所述第一赋予子模块包括:第一发送子模块,用于向发送所述话权申请消息的终端发送授权消息;第二赋予子模块,用于根据所述授权消息赋予发送所述话权申请消息的终端话权。

可选的,上述媒体流的传输装置还包括:第二发送子模块,用于在向发送所述话权申请消息的终端发送授权消息的同时,向所述未拥有话权的多个被叫终端发送话权通知消息,其中,所述话权通知消息中携带有主叫终端的标识码。

根据本发明实施例的另外一个方面,还提供了一种媒体流的传输装置,包括:第三获取单元,用于获取多个主叫终端的下行媒体流,其中,所述多个主叫终端是通过集群控制功能tcf模块确定的拥有话权的多个终端,所述多个主叫终端的下行媒体流是由所述tcf模块根据接收到的所述多个主叫终端的上行媒体流生成的;第四获取单元,用于按照预定混音规则对所述多个主叫终端的下行媒体流进行混音操作,得到多个混音媒体流。

可选的,所述第四获取单元包括:第五获取子单元,用于所述多个主叫终端将除自身的上行媒体流生成的下行媒体流之外的下行媒体流进行混音操作,得到第三混音媒体流,其中,所述第三混音媒体流中包括与所述多个主叫终端数量相同的多个混音媒体流;第六获取子单元,用于将根据所述多个主叫终端的上行媒体流生成的下行媒体流进行混音操作,得到第四混音媒体流,其中,所述第四混音媒体流中包括与未拥有话权的多个被叫终端数量相同的多个混音媒体流;第七获取子单元,用于根据所述第三混音媒体流和所述第四混音媒体流得到所述多个混音媒体流。

根据本发明实施例的另外一个方面,还提供了一种存储介质,所述存储介质包括存储的程序,其中,所述程序执行上述中任意一项所述的媒体流的传输方法。

根据本发明实施例的另外一个方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述中任意一项所述的媒体流的传输方法。

在本发明实施例中,采用通过集群控制功能tcf模块确定拥有话权的多个主叫终端和未拥有话权的多个被叫终端;同时获取拥有话权的多个主叫终端中每个主叫终端的上行媒体流;并按照预定混音规则对每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流;以及将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端的方式,通过本发明实施例提供的媒体流的传输方法可以实现支持多用户同时讲话的半双工组呼的目的,达到了更好地满足用户需求的技术效果,进而解决了相关技术中宽带集群通信b-trunc的每个呼叫中同一时刻不支持多用户讲话,导致的通讯效率较低的技术问题,提升了用户体验。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据现有技术的宽带集群通讯系统的结构图;

图2是根据本发明实施例的媒体流的传输方法的流程图;

图3是根据本发明实施例的控制端混音的流程图;

图4是根据本发明实施例的媒体流的传输方法中用户终端申请话权的流程图;

图5是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫的时序图;

图6是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请的时序图;

图7是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请被拒绝的时序图;

图8是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请抢占的时序图;

图9是根据本发明实施例的媒体流的传输方法的优选流程图;

图10是根据本发明实施例的用户端混音的流程图;

图11是根据本发明实施例的媒体流的传输装置的示意图;

图12是根据本发明实施例的可选的媒体流的传输装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

为了便于描述,下面对本发明实施例中出现的部分名词或术语进行详细说明。

通用移动通信技术的长期演进(longtermevolution,简称lte):是由3gpp(the3rdgenerationpartnershipproject,第三代合作伙伴计划)组织制定的umts(universalmobiletelecommunicationssystem,通用移动通信系统)技术标准的长期演进。

宽带集群通讯(broadbandtrunkingcommunication,简称b-trunc):是由宽带集群产业联盟组织制定的基于td-lte的“lte数字传输+集群语音通信”专网宽带集群系统标准。

核心网:是提供用户连接,对用户的管理以及对业务完成承载,作为承载网络提供到外部网络的接口,核心网部分就是位于网络子系统内,主要是把a口上来的呼叫请求或数据请求,持续到不同的网络上。

实施例1

根据本发明实施例,提供了一种媒体流的传输方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图2是根据本发明实施例的媒体流的传输方法的流程图,如图2所示,该媒体流的传输方法包括如下步骤:

步骤s202,通过集群控制功能tcf模块确定拥有话权的多个主叫终端和未拥有话权的多个被叫终端。

步骤s204,获取拥有话权的多个主叫终端中每个主叫终端的上行媒体流。

步骤s206,按照预定混音规则对每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流。

步骤s208,将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端。

通过上述步骤,可以根据拥有话权的多个主叫终端中的每个主叫终端的上行媒体流得到多个混音媒体流,并将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端。相对于相关技术中宽带集群通讯b-trunc的组呼与传统集群的组呼,在每个呼叫中只允许一个成员获得话权,不支持多用户讲话的弊端,通过本发明实施例提供的媒体流的传输方法可以实现支持多用户同时讲话的半双工组呼的目的,达到了更好地满足用户需求的技术效果,进而解决了相关技术中宽带集群通信b-trunc的每个呼叫中同一时刻不支持多用户讲话,导致的通讯效率较低的技术问题,提升了用户体验。

由于对各个主叫终端的媒体流进行的混音操作可以在核心网执行,当然也可以在终端设备来执行,下面对各个主叫终端的媒体流在核心网进行混音进行详细说明。

作为本发明一个可选的实施例,按照预定混音规则对每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流可以包括:依次将多个主叫终端中除主叫终端自身之外的每个主叫终端的上行媒体流进行混音操作,得到第一混音媒体流,其中,第一混音媒体流中包括与多个主叫终端数量相同的多个混音媒体流;将多个主叫终端中每个主叫终端的上行媒体流进行混音操作,得到第二混音媒体流;根据第一混音媒体流和第二混音媒体流得到多个混音媒体流。上述这种方式是在核心网端进行混音的方式,各个主叫终端(也即是,拥有话权的用户终端)各自拥有一路上行媒体流,并将自身的上行媒体流上传至集群调度媒体功能模块tmf,集群调度媒体功能模块tmf对上述上行媒体流进行混音,形成多路下行媒体流,并将形成的多路下行媒体流分别下发至各个主叫终端以及各个被叫终端。

例如,图3是根据本发明实施例的控制端混音的流程图,如图3所示,包括:集群调度媒体功能模块tmf,综合业务网关xgw,基站enodeb1,基站enodeb2,被叫终端ue1,被叫终端ue2,主叫终端1、主叫终端2、主叫终端3。在图3中,用户终端ue1、用户终端ue2、用户终端ue3(也即是,主叫终端1、主叫终端2以及主叫终端3)均占用话权,各自有一路上行的媒体流。tmf形成4路下行的媒体流,分别是:对ue2、ue3媒体流进行混音形成媒体流1,最终发送给ue1;对ue1、ue3媒体流进行混音形成媒体流2,最终发送给ue2;对ue1、ue2媒体流进行混音形成媒体流3,最终发送给ue3;对ue1、ue2及ue3媒体流进行混音形成媒体流4,最终发送给除了ue1、ue2、ue3之外的非占用话权的ue,例如,图3中所示的被叫终端1以及被叫终端2。采用这种在核心网端进行对来自各个用户终端的上行媒体流进行混音的方式,可以根据实际情况,将每个主叫终端中除了自身之外的主叫终端的上行媒体流进行混音,形成的下行媒体流发送给该主叫终端,确保每个主叫终端接收的下行媒体流携带的消息中不包含自身发出的消息,从而可以节省流量,并且提升了通信效率。对于各个被叫终端,则会接收到所有主叫终端的上行媒体流混音后形成的下行媒体流,可以确保各个被叫终端接收的信息的完整性。

在上述实施例中通过核心网对多个主叫终端上传的上行媒体流进行混音后,还需要将混音后的混音媒体流下发至各个主叫终端以及被叫终端进而实现组内各个用户终端的通信,其中,将混音后得到的混音媒体流下发至各个主叫终端或多个被叫终端可以通过以下方式来实现。

具体地,将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端可以包括:将第一混音媒体流发送给多个主叫终端,同时将第二混音媒体流发送给多个被叫终端。

例如,第一混音媒体流可以包括:主叫终端2的上行媒体流对应的下行媒体流和主叫终端3的上行媒体流对应的下行媒体流混音后得到的混音媒体流1,主叫终端1的上行媒体流对应的下行媒体流和主叫终端3的上行媒体流对应的下行媒体流混音后得到的混音媒体流2,主叫终端1的上行媒体流对应的下行媒体流和主叫终端2的上行媒体流对应的下行媒体流混音后得到的混音媒体流3;第二混音媒体流可以包括:主叫终端1的上行媒体流对应的下行媒体流、主叫终端2的上行媒体流对应的下行媒体流以及主叫终端3的上行媒体流对应的下行媒体流混音后得到的混音媒体流4。

在对上述各个主叫终端的上行媒体流进行混音操作得到上述各个混音媒体流之后,可以将上述混音媒体流1发送给主叫终端1,将上述混音媒体流2发送给主叫终端2,将上述混音媒体流3发送给上述主叫终端3,以及上述将混音媒体流4发送至上述被叫终端1和被叫终端2,从而实现组内各个用户设备的通信。

为了解决相关技术中宽带集群通讯b-trunc的组呼与传统集群的组呼,在每个呼叫中只允许一个成员获得话权,不支持多用户讲话的技术问题,在本发明实施例中提供的媒体流的传输方法可以支持多用户同时讲话,以及支持的同时讲话的最多用户数,在组呼的签约信息中会有规定;支持多用户同时讲话的组可以发起普通的组呼,也可以发起同时讲话的组呼。其中,用户设备在呼叫请求中会指示本次呼叫是否为多用户讲话的组呼,集群调度控制功能模块tcf进行多用户讲话组呼的呼叫和话权决策,可以在话权通知中包含多个话权的占用的信息,下面进行详细说明。图4是根据本发明实施例的媒体流的传输方法中用户终端申请话权的流程图,如图4所示,tcf接收到用户终端ue的呼叫请求,然后查看呼叫请求中携带的组属性和用户终端ue签约信息,根据上述组属性和用户终端ue签约信息确定该用户终端是否有权限发起呼叫,在用户终端ue有权限发起呼叫的情况下,接收呼叫请求,授权给该用户终端ue,并向组内其他用户终端发送话权通知;反之,用户终端无权发起呼叫,拒绝呼叫请求。

其中,对于媒体层面的处理可以有两种方法:1.tmf进行混音:对于同时n各用户讲话的呼叫,tmf生成n+1个下行媒体流;将所有的上行媒体流混音为1个下行媒体流,分发给无话权的用户;对于每一个讲话用户(也即是,上下文中的主叫终端),将所有其他讲话用户的上行媒体流混音为1个下行媒体流,发给该讲话用户。2.用户终端进行混音:tmf不进行混音处理,把收到的每个上行媒体流直接转换成下行媒体流,对于无话权的用户终端(也即是,上下文中的被叫终端),直接把收到的该组的所有下行媒体流进行混音;对于每个讲话的用户终端,用户终端从收到的该组的所有下行媒体流中丢弃来自自身的媒体流后,进行混音。为了实现用户终端的上述区分功能,tmf在发送下行媒体流时,ip包的源ip地址填写该媒体流实际来自用户终端的ip地址。

作为本发明一个可选的实施例,如果要实现支持多用户同时讲话的目的,首先需要发起多用户讲话的呼叫。图5是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫的时序图。如图5所示,包括如下步骤:

步骤s501,用户终端ue1在呼叫请求callrequest消息中携带组号码(也即是,上下文中的被叫终端的号码),并通过呼叫类型calltype或者呼叫属性callattribute,指示本次呼叫为多用户讲话的组呼。

步骤s502,如果tcf处没有对应组的属性,则与增强型归属用户服务器ehss交互获得组属性。

步骤s503,tcf根据组和用户终端的属性,判断是否允许发起本次呼叫。

步骤s504,tcf向主叫终端发送callaccept消息,同意发起呼叫并将话权授予该用户终端。

步骤s505,与上述步骤s604并行实施,tcf向被叫终端发送groupcallsetupindication消息,通知呼叫建立。

步骤s506,主叫终端返回callcomplete消息,完成呼叫建立。

步骤s507,tcf向被叫终端发送话权通知floorinform消息,其中,floorinform携带有话权用户终端为用户终端1。

通过上述实施例,可以实现根据发起的多用户讲话的呼叫,建立呼叫关系,并且,被叫终端可以实时得知当前拥有话权的主叫终端。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。

作为本发明一个可选的实施例,通过集群控制功能tcf模块确定拥有话权的多个主叫终端可以包括:在接收到多个终端中的部分终端发送的话权申请消息后,统计当前拥有话权的主叫终端的数量;根据当前拥有话权的主叫终端的数量和话权终端阈值进行比较;在当前拥有话权的主叫终端的数量小于话权终端阈值的情况下,为发送话权申请消息的终端赋予话权。也即是,组呼内可以包括多个主叫终端和多个被叫终端,并且也会规定一个话权终端阈值,当前拥有话权的主叫终端的数量不能超过话权终端阈值。在当前拥有话权的主叫终端的数量小于话权终端阈值的情况下,可以为发送话权申请消息的终端赋予话权。

例如,图6是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请的时序图。如图6所示,包括如下步骤:

步骤s601,用户终端ue2在用户终端1讲话时发送floorrequest消息,申请话权。

步骤s602,tcf判断本次呼叫是否允许多用户讲话。

步骤s603,tcf向用户终端ue2发送floorgrant消息,进行话权授权。

步骤s604,用户终端ue2返回授权确认floorgrantack消息。然后,用户终端ue2可以讲话。

步骤s605,tcf向被叫用户终端(包括此前正在讲话的用户终端ue1)发送话权通知floorinform,指示话权占用者为用户终端ue1和用户终端ue2。

通过上述实施例在满足条件的情况下,可以为发起话权申请的用户终端授予话权,并告知各个终端设备当前话权拥有者为哪些用户终端。

作为本发明一个可选的实施例,在根据当前拥有话权的主叫终端的数量和话权终端阈值进行比较之后,上述媒体流的传输方法还可以包括:在当前拥有话权的主叫终端的数量超过话权终端阈值的情况下,向发送话权申请消息的终端发送话权申请失败消息。也即是,在当前拥有话权的主叫终端的数量大于等于话权终端阈值的情况下,可以拒绝发送话权申请消息的终端发送的话权申请消息。

具体地,在某个用户终端进行话权申请的情况下,多用户讲话呼叫中的话权申请可能会被拒绝。图7是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请被拒绝的时序图,如图7所示,包括如下步骤:

步骤s701,用户终端ue2讲话时发送floorrequest消息申请话权。

步骤s702,tcf根据话权策略判断是否授予ue2话权。如果出现以下步骤s7021,步骤s7022以及步骤s7023的情况,则tcf拒绝ue2的话权申请。

步骤s7021,本次呼叫不允许多用户讲话,或

步骤s7022,本次呼叫允许多用户讲话,但讲话的数量已经达到允许讲话的数量的最大值,且ue2的话权优先级不高于任何一个讲话者;或

步骤s7023,本次呼叫允许多用户讲话,但不允许话权抢占。

步骤s703,tcf向ue2发送话权拒绝floorreject消息。

通过上述实施例,可以实现当tcf接收到用户终端发送的话权申请消息的情况下,综合各种情况,判断是否可以为发出话权申请的用户终端授予话权,在不满足授权条件的情况下,及时拒绝授予话权,从而实现了对话权申请的有效合理的管理。

作为本发明一个可选的实施例,在当前拥有话权的主叫终端的数量大于话权终端阈值的情况下,上述媒体流的传输方法还可以包括:在当前拥有话权的主叫终端的数量超过话权终端阈值的情况下,获取话权申请消息中携带的发送话权申请消息的终端的标识;根据标识在集群控制功能tcf模块中查询发送话权申请消息的终端对应的优先级;根据优先级,确定拥有话权的多个主叫终端。也即是,上述集群控制功能tcf模块中存储有多个终端的标识,以及多个终端对应的优先级,上述多个终端的标识与多个终端对应的优先级是一一对应的。当一个终端发送话权申请消息的时候,会携带有该终端的标识,在集群控制功能tcf模块接收到上述话权申请消息后,会解析出话权申请消息中的终端标识,然后基于上述标识查询该终端对应的优先级。

具体地,根据优先级,确定拥有话权的多个主叫终端可以包括:将拥有话权的主叫终端的优先级和发送话权申请消息的终端的优先级进行排序,得到优先级排序结果;根据优先级排序结果,确定拥有话权的多个主叫终端。也即是,将拥有话权的主叫终端的优先级和发送话权申请消息的终端的优先级进行排序,得到一个优先级排序结果,根据该优先级排序结果确定发送话权申请消息的终端是否可以拥有话权。

作为本发明一个可选的实施例,根据优先级排序结果,确定拥有话权的多个主叫终端可以包括:将优先级排序结果中最小的优先级对应的主叫终端的话权释放;为发送话权申请消息的终端赋予话权。

作为本发明一个可选的实施例,为发送话权申请消息的终端赋予话权可以包括:向发送话权申请消息的终端发送授权消息;根据授权消息赋予发送话权申请消息的终端话权。

作为本发明一个可选的实施例,在向发送话权申请消息的终端发送授权消息的同时,上述媒体流的传输方法还可以包括:向未拥有话权的多个被叫终端发送话权通知消息,其中,话权通知消息中携带有主叫终端的标识码。通过话权通知消息中携带的主叫终端的标识码可以实时得知当前拥有话权的主叫终端,也即是当前的讲话者有哪些。

例如,图8是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请抢占的时序图。如图8所示,包括如下步骤:

步骤s801,用户终端ue3在用户终端ue1、用户终端ue2讲话时,发出floorrequest消息申请话权。

步骤s802,tcf根据话权策略判断是否授予ue2话权。如果用户终端ue1、用户终端ue2以及用户终端ue3中,用户终端ue1的话权优先级最低,则tcf应释放用户终端ue1的话权,授予用户终端ue3。

步骤s803,tcf向用户终端ue1发送floorrelease消息,释放用户终端ue1的话权。

步骤s804,用户终端ue1回复释放确认floorreleaseack消息。

步骤s805,tcf向用户终端ue3发送floorgrant消息,将话权授予用户终端ue3。

步骤s806,用户终端ue3恢复授权确认floorgrantack消息,此时用户终端ue3可以讲话。

步骤s807,tcf向组内用户终端ue发送话权通知floorinform,指示话权占用者为用户终端2和用户终端3。

通过上述实施例,在已经存在多个主叫终端的情况下,针对发起话权申请的用户终端,可以根据具体情况,例如,优先级,来确认是否授予当前申请话权的用户终端,在可以授予当前申请话权的用户终端的情况下,需要释放掉优先级最低的拥有话权的用户终端的话权,从而使得话权的分配更加合理。

实施例2

根据本发明实施例,还提供了一种媒体流的传输方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图9是根据本发明实施例的媒体流的传输方法的优选流程图,如图9所示,该媒体流的传输方法可以包括如下步骤:

步骤s902,获取多个主叫终端的下行媒体流,其中,多个主叫终端是通过集群控制功能tcf模块确定的拥有话权的多个终端,多个主叫终端的下行媒体流是由tcf模块根据接收到的多个主叫终端的上行媒体流生成的。

步骤s904,按照预定混音规则对多个主叫终端的下行媒体流进行混音操作,得到多个混音媒体流。

在本实施例中,可以通过获取多个主叫终端的下行媒体流,其中,多个主叫终端是通过集群控制功能tcf模块确定的拥有话权的多个终端,多个主叫终端的下行媒体流是由tcf模块根据接收到的多个主叫终端的上行媒体流生成的;同时按照预定混音规则对多个主叫终端的下行媒体流进行混音操作,得到多个混音媒体流。相对于相关技术中宽带集群通讯b-trunc的组呼与传统集群的组呼,在每个呼叫中只允许一个成员获得话权,不支持多用户讲话的弊端,通过本发明实施例提供的媒体流的传输方法可以实现支持多用户同时讲话的半双工组呼的目的,达到了更好地满足用户需求的技术效果,进而解决了相关技术中宽带集群通信b-trunc的每个呼叫中同一时刻不支持多用户讲话,导致的通讯效率较低的技术问题,提升了用户体验。

作为本发明一个可选的实施例,按照预定混音规则对多个主叫终端的下行媒体流进行混音操作,得到多个混音媒体流可以包括:多个主叫终端将除自身的上行媒体流生成的下行媒体流之外的下行媒体流进行混音操作,得到第三混音媒体流,其中,第三混音媒体流中包括与多个主叫终端数量相同的多个混音媒体流;将根据多个主叫终端的上行媒体流生成的下行媒体流进行混音操作,得到第四混音媒体流,其中,第四混音媒体流中包括与未拥有话权的多个被叫终端数量相同的多个混音媒体流;根据第三混音媒体流和第四混音媒体流得到多个混音媒体流。

其中,上述第三混音媒体流可以包括:主叫终端1通过源ip地址识别,丢弃主叫终端1的上行媒体流对应的下行媒体流之后,将主叫终端2的上行媒体流对应的下行媒体流和主叫终端3的上行媒体流对应的下行媒体流进行混音后得到的混音媒体流5;主叫终端2通过源ip地址识别,丢弃主叫终端2的上行媒体流对应的下行媒体流之后,将主叫终端1的上行媒体流对应的下行媒体流和主叫终端3的上行媒体流对应的下行媒体流进行混音后得到的混音媒体流6;主叫终端3通过源ip地址识别,丢弃主叫终端3的上行媒体流对应的下行媒体流之后,将主叫终端1的上行媒体流对应的下行媒体流和主叫终端2的上行媒体流对应的下行媒体流进行混音后得到的混音媒体流7。上述第四混音媒体流可以包括:将主叫终端1的上行媒体流对应的下行媒体流、将主叫终端2的上行媒体流对应的下行媒体流以及将主叫终端3的上行媒体流对应的下行媒体流进行混音后得到的混音媒体流8。

在对上述各个主叫终端的上行媒体流对应的下行媒体流进行混音操作得到上述各个混音媒体流之后,可以将上述混音媒体流5发送给主叫终端1,将混音媒体流6发送给主叫终端2,将上述混音媒体流7发送给上述主叫终端3,以及上述将混音媒体流8发送至上述被叫终端1和被叫终端2,从而实现组内各个用户设备的通信。

图10是根据本发明实施例的用户端混音的流程图,如图10所示,包括:集群调度媒体功能模块tmf,综合业务网关xgw,基站enodeb1,基站enodeb2,被叫终端ue1,被叫终端ue2,主叫终端ue1、主叫终端ue2、主叫终端ue3。在图10中,用户终端ue1、ue2、ue3(也即是,主叫终端1、主叫终端2以及主叫终端3)均占用话权,各自有一路上行的媒体流。tmf形成3路下行媒体流,分别是:来自ue1的媒体流1,其ip包的源ip地址填写为ue1的ip地址;来自ue2的媒体流2,其ip包的源ip地址填写为ue2的ip地址;来自ue3的媒体流3,其ip包的源ip地址填写为ue3的ip地址。上述3路下行媒体流均在空中接口上进行广播,组内的被叫终端(例如,被叫终端1和被叫终端2)均可收到这3路媒体流。不同的用户设备如下:ue1通过源ip地址识别,丢弃媒体流1,把媒体流2和媒体流3进行混音;ue2通过源ip地址识别,丢弃媒体流2,把媒体流1和媒体流3进行混音;ue3通过源ip地址识别,丢弃媒体流3,把媒体流1和媒体流2进行混音;组内其他的用户终端(例如,被叫终端1和被叫终端2)把媒体流1、媒体流2以及媒体流3进行混音。

在本发明实施例中,通过用户终端对由tmf根据多个主叫终端的上行媒体流生成的下行媒体流进行混音,tmf不进行混音处理,把收到的每个上行媒体流直接转换成下行媒体流,对于无话权的用户终端(也即是,上下文中的被叫终端),直接把收到的该组的所有下行媒体流进行混音;对于每个讲话的用户终端,从收到的该组的所有下行媒体流中丢弃来自自身的媒体流后,进行混音。为了实现用户终端的上述区分功能,tmf在发送下行媒体流时,ip包的源ip地址填写该媒体流实际来自用户终端的ip地址。

需要说明的是,如果要实现支持多用户同时讲话的目的,首先需要发起多用户讲话的呼叫。图5是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫的时序图。如图5所示,包括如下步骤:

步骤s501,用户终端ue1在呼叫请求callrequest消息中携带组号码(也即是,上下文中的被叫终端的号码),并通过呼叫类型calltype或者呼叫属性callattribute,指示本次呼叫为多用户讲话的组呼。

步骤s502,如果tcf处没有对应组的属性,则与增强型归属用户服务器ehss交互获得组属性。

步骤s503,tcf根据组和用户终端的属性,判断是否允许发起本次呼叫。

步骤s504,tcf向主叫终端发送callaccept消息,同意发起呼叫并将话权授予该用户终端。

步骤s505,与上述步骤s604并行实施,tcf向被叫终端发送groupcallsetupindication消息,通知呼叫建立。

步骤s506,主叫终端返回callcomplete消息,完成呼叫建立。

步骤s507,tcf向被叫终端发送话权通知floorinform消息,其中,floorinform携带有话权用户终端为用户终端1。

通过上述实施例,可以实现根据发起的多用户讲话的呼叫,建立呼叫关系,并且,被叫终端可以实时得知当前拥有话权的主叫终端。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。

作为本发明一个可选的实施例,上述集群控制功能tcf模块不仅可以用于确定拥有话权的多个主叫终端,也可以用于确定未拥有话权的多个被叫终端。

其中,通过集群控制功能tcf模块确定拥有话权的多个主叫终端可以包括:在接收到多个终端中的部分终端发送的话权申请消息后,统计当前拥有话权的主叫终端的数量;根据当前拥有话权的主叫终端的数量和话权终端阈值进行比较;在当前拥有话权的主叫终端的数量小于话权终端阈值的情况下,为发送话权申请消息的终端赋予话权。也即是,组呼内可以包括多个主叫终端和多个被叫终端,并且也会规定一个话权终端阈值,当前拥有话权的主叫终端的数量不能超过话权终端阈值。在当前拥有话权的主叫终端的数量小于话权终端阈值的情况下,可以为发送话权申请消息的终端赋予话权。

例如,图6是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请的时序图。如图6所示,包括如下步骤:

步骤s601,用户终端ue2在用户终端1讲话时发送floorrequest消息,申请话权。

步骤s602,tcf判断本次呼叫是否允许多用户讲话。

步骤s603,tcf向用户终端ue2发送floorgrant消息,进行话权授权。

步骤s604,用户终端ue2返回授权确认floorgrantack消息。然后用户终端ue2可以讲话

步骤s605,tcf向被叫用户终端(包括此前正在讲话的用户终端ue1)发送话权通知floorinform,指示话权占用者为用户终端ue1和用户终端ue2。

通过上述实施例在满足条件的情况下,可以为发起话权申请的用户终端授予话权,并告知各个终端设备当前话权拥有者为哪些用户终端。

作为本发明一个可选的实施例,在根据当前拥有话权的主叫终端的数量和话权终端阈值进行比较之后,上述媒体流的传输方法还可以包括:在当前拥有话权的主叫终端的数量超过话权终端阈值的情况下,向发送话权申请消息的终端发送话权申请失败消息。也即是,在当前拥有话权的主叫终端的数量大于等于话权终端阈值的情况下,可以拒绝发送话权申请消息的终端发送的话权申请消息。

具体地,在某个用户终端进行话权申请的情况下,多用户讲话呼叫中的话权申请可能会被拒绝。图7是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请被拒绝的时序图,如图7所示,包括如下步骤:

步骤s701,用户终端ue2讲话时发送floorrequest消息申请话权。

步骤s702,tcf根据话权策略判断是否授予ue2话权。如果出现以下步骤s7021,步骤s7022以及步骤s7023的情况,则tcf拒绝ue2的话权申请。

步骤s7021,本次呼叫不允许多用户讲话,或

步骤s7022,本次呼叫允许多用户讲话,但讲话的数量已经达到允许讲话的数量的最大值,且ue2的话权优先级不高于任何一个讲话者;或

步骤s7023,本次呼叫允许多用户讲话,但不允许话权抢占。

步骤s703,tcf向ue2发送话权拒绝floorreject消息。

通过上述实施例,可以实现当tcf接收到用户终端发送的话权申请消息的情况下,综合各种情况,判断是否可以为发出话权申请的用户终端授予话权,在不满足授权条件的情况下,及时拒绝授予话权,从而实现了对话权申请的有效合理的管理。

作为本发明一个可选的实施例,在当前拥有话权的主叫终端的数量大于话权终端阈值的情况下,上述媒体流的传输方法还可以包括:在当前拥有话权的主叫终端的数量超过话权终端阈值的情况下,获取话权申请消息中携带的发送话权申请消息的终端的标识;根据标识在集群控制功能tcf模块中查询发送话权申请消息的终端对应的优先级;根据优先级,确定拥有话权的多个主叫终端。也即是,上述集群控制功能tcf模块中存储有多个终端的标识,以及多个终端对应的优先级,上述多个终端的标识与多个终端对应的优先级是一一对应的。当一个终端发送话权申请消息的时候,会携带有该终端的标识,在集群控制功能tcf模块接收到上述话权申请消息后,会解析出话权申请消息中的终端标识,然后基于上述标识查询该终端对应的优先级。

具体地,根据优先级,确定拥有话权的多个主叫终端可以包括:将拥有话权的主叫终端的优先级和发送话权申请消息的终端的优先级进行排序,得到优先级排序结果;根据优先级排序结果,确定拥有话权的多个主叫终端。也即是,将拥有话权的主叫终端的优先级和发送话权申请消息的终端的优先级进行排序,得到一个优先级排序结果,根据该优先级排序结果确定发送话权申请消息的终端是否可以拥有话权。

作为本发明一个可选的实施例,根据优先级排序结果,确定拥有话权的多个主叫终端可以包括:将优先级排序结果中最小的优先级对应的主叫终端的话权释放;为发送话权申请消息的终端赋予话权。

作为本发明一个可选的实施例,为发送话权申请消息的终端赋予话权可以包括:向发送话权申请消息的终端发送授权消息;根据授权消息赋予发送话权申请消息的终端话权。

作为本发明一个可选的实施例,在向发送话权申请消息的终端发送授权消息的同时,上述媒体流的传输方法还可以包括:向未拥有话权的多个被叫终端发送话权通知消息,其中,话权通知消息中携带有主叫终端的标识码。通过话权通知消息中携带的主叫终端的标识码可以实时得知当前拥有话权的主叫终端,也即是当前的讲话者有哪些。

例如,图8是根据本发明实施例的媒体流的传输方法中多用户讲话呼叫中的话权申请抢占的时序图。如图8所示,包括如下步骤:

步骤s801,用户终端ue3在用户终端ue1、用户终端ue2讲话时,发出floorrequest消息申请话权。

步骤s802,tcf根据话权策略判断是否授予ue2话权。如果用户终端ue1、用户终端ue2以及用户终端ue3中,用户终端ue1的话权优先级最低,则tcf应释放用户终端ue1的话权,授予用户终端ue3。

步骤s803,tcf向用户终端ue1发送floorrelease消息,释放用户终端ue1的话权。

步骤s804,用户终端ue1回复释放确认floorreleaseack消息。

步骤s805,tcf向用户终端ue3发送floorgrant消息,将话权授予用户终端ue3。

步骤s806,用户终端ue3恢复授权确认floorgrantack消息,此时用户终端ue3可以讲话。

步骤s807,tcf向组内用户终端ue发送话权通知floorinform,指示话权占用者为用户终端2和用户终端3。

通过上述实施例,在已经存在多个主叫终端的情况下,针对发起话权申请的用户终端,可以根据具体情况,例如,优先级,来确认是否授予当前申请话权的用户终端,在可以授予当前申请话权的用户终端的情况下,需要释放掉优先级最低的拥有话权的用户终端的话权,从而使得话权的分配更加合理。

实施例3

根据本发明实施例还提供了一种媒体流的传输装置,需要说明的是,本发明实施例的媒体流的传输装置可以用于执行本发明实施例所提供的媒体流的传输方法。以下对本发明实施例提供的媒体流的传输装置进行介绍。

图11是根据本发明实施例的媒体流的传输装置的示意图,如图11所示,该媒体流的传输装置可以包括:确定单元1101,第一获取单元1103,第二获取单元1105以及传输单元1107。下面对该媒体流的传输装置进行详细说明。

确定单元1101,用于通过集群控制功能tcf模块确定拥有话权的多个主叫终端和未拥有话权的多个被叫终端。

第一获取单元1103,与上述确定单元1101连接,用于获取拥有话权的多个主叫终端中每个主叫终端的上行媒体流。

第二获取单元1105,与上述第一获取单元1103连接,用于按照预定混音规则对每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流。

传输单元1107,与上述第二获取单元1105连接,用于将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端。

在上述实施例中,可以利用确定单元通过集群控制功能tcf模块确定拥有话权的多个主叫终端和未拥有话权的多个被叫终端;同时利用第一获取单元获取拥有话权的多个主叫终端中每个主叫终端的上行媒体流;然后通过第二获取单元按照预定混音规则对每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流;以及利用传输单元将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端。相对于相关技术中宽带集群通讯b-trunc的组呼与传统集群的组呼,在每个呼叫中只允许一个成员获得话权,不支持多用户讲话的弊端,通过本发明实施例提供的媒体流的传输装置可以实现支持多用户同时讲话的半双工组呼的目的,达到了更好地满足用户需求的技术效果,进而解决了相关技术中宽带集群通信b-trunc的每个呼叫中同一时刻不支持多用户讲话,导致的通讯效率较低的技术问题,提升了用户体验。

作为本发明一个可选的实施例,上述第二获取单元可以包括:第一获取子单元,用于依次将多个主叫终端中除主叫终端自身之外的每个主叫终端的上行媒体流进行混音操作,得到第一混音媒体流,其中,第一混音媒体流中包括与多个主叫终端数量相同的多个混音媒体流;第二获取子单元,用于将多个主叫终端中每个主叫终端的上行媒体流进行混音操作,得到第二混音媒体流;第三获取子单元,用于根据第一混音媒体流和第二混音媒体流得到多个混音媒体流。

作为本发明一个可选的实施例,上述传输单元可以包括:第一传输子单元,用于将第一混音媒体流传输至多个主叫终端;第二传输子单元,用于将第二混音媒体流传输至多个被叫终端。

作为本发明一个可选的实施例,上述确定单元可以包括:统计子单元,用于在接收到多个终端中的部分终端发送的话权申请消息后,统计当前拥有话权的主叫终端的数量;比较子单元,用于根据当前拥有话权的主叫终端的数量和话权终端阈值进行比较;赋予子单元,用于在当前拥有话权的主叫终端的数量小于话权终端阈值的情况下,为发送话权申请消息的终端赋予话权。

作为本发明一个可选的实施例,上述媒体流的传输装置还可以包括:发送子单元,用于在根据当前拥有话权的主叫终端的数量和话权终端阈值进行比较之后,在当前拥有话权的主叫终端的数量超过话权终端阈值的情况下,向发送话权申请消息的终端发送话权申请失败消息。

作为本发明一个可选的实施例,上述媒体流的传输装置还可以包括:第四获取子单元,用于在根据当前拥有话权的主叫终端的数量和话权终端阈值进行比较之后,在当前拥有话权的主叫终端的数量超过话权终端阈值的情况下,获取话权申请消息中携带的发送话权申请消息的终端的标识;查询子单元,用于根据标识在集群控制功能tcf模块中查询发送话权申请消息的终端对应的优先级;确定子单元,用于根据优先级,确定拥有话权的多个主叫终端。

作为本发明一个可选的实施例,上述确定子单元可以包括:获取模块,用于将拥有话权的主叫终端的优先级和发送话权申请消息的终端的优先级进行排序,得到优先级排序结果;确定模块,用于根据优先级排序结果,确定拥有话权的多个主叫终端。

作为本发明一个可选的实施例,上述确定模块可以包括:释放子模块,用于将优先级排序结果中最小的优先级对应的主叫终端的话权释放;第一赋予子模块,用于为发送话权申请消息的终端赋予话权。

作为本发明一个可选的实施例,上述第一赋予子模块可以包括:第一发送子模块,用于向发送话权申请消息的终端发送授权消息;第二赋予子模块,用于根据授权消息赋予发送话权申请消息的终端话权。

作为本发明一个可选的实施例,上述媒体流的传输装置还可以包括:第二发送子模块,用于在向发送话权申请消息的终端发送授权消息的同时,向未拥有话权的多个被叫终端发送话权通知消息,其中,话权通知消息中携带有主叫终端的标识码。

实施例4

根据本发明实施例还提供了一种媒体流的传输装置,需要说明的是,本发明实施例的媒体流的传输装置可以用于执行本发明实施例所提供的媒体流的传输方法。以下对本发明实施例提供的媒体流的传输装置进行介绍。

图12是根据本发明实施例的可选的媒体流的传输装置的示意图,如图12所示,该媒体流的传输装置可以包括:第三获取单元1201以及第四获取单元1203。下面对本发明实施例提供的媒体流的传输装置进行介绍。

第三获取单元1201,用于获取多个主叫终端的下行媒体流,其中,多个主叫终端是通过集群控制功能tcf模块确定的拥有话权的多个终端,多个主叫终端的下行媒体流是由tcf模块根据接收到的多个主叫终端的上行媒体流生成的。

第四获取单元1203,与上述第三获取单元1201连接,用于按照预定混音规则对多个主叫终端的下行媒体流进行混音操作,得到多个混音媒体流。

在本实施例中,可以利用第三获取单元获取多个主叫终端的下行媒体流,其中,多个主叫终端是通过集群控制功能tcf模块确定的拥有话权的多个终端,多个主叫终端的下行媒体流是由tcf模块根据接收到的多个主叫终端的上行媒体流生成的;并利用第四获取单元按照预定混音规则对多个主叫终端的下行媒体流进行混音操作,得到多个混音媒体流。相对于相关技术中宽带集群通讯b-trunc的组呼与传统集群的组呼,在每个呼叫中只允许一个成员获得话权,不支持多用户讲话的弊端,通过本发明实施例提供的媒体流的传输装置可以实现支持多用户同时讲话的半双工组呼的目的,达到了更好地满足用户需求的技术效果,进而解决了相关技术中宽带集群通信b-trunc的每个呼叫中同一时刻不支持多用户讲话,导致的通讯效率较低的技术问题,提升了用户体验。

作为本发明一个可选的实施例,上述第四获取单元可以包括:第五获取子单元,用于多个主叫终端将除自身的上行媒体流生成的下行媒体流之外的下行媒体流进行混音操作,得到第三混音媒体流,其中,第三混音媒体流中包括与多个主叫终端数量相同的多个混音媒体流;第六获取子单元,用于将根据多个主叫终端的上行媒体流生成的下行媒体流进行混音操作,得到第四混音媒体流,其中,第四混音媒体流中包括与未拥有话权的多个被叫终端数量相同的多个混音媒体流;第七获取子单元,用于根据第三混音媒体流和第四混音媒体流得到多个混音媒体流。

上述媒体流的传输装置包括处理器和存储器,上述确定单元1101,第一获取单元1103,第二获取单元1105、传输单元1107、第三获取单元1201以及第四获取单元1203等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

上述处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端。

上述存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。

根据本发明实施例的另外一个方面,还提供了一种存储介质,存储介质包括存储的程序,其中,程序执行上述中任意一项的媒体流的传输方法。

根据本发明实施例的另外一个方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述中任意一项的媒体流的传输方法。

在本发明实施例中还提供了一种设备,该设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:通过集群控制功能tcf模块确定拥有话权的多个主叫终端和未拥有话权的多个被叫终端;获取拥有话权的多个主叫终端中每个主叫终端的上行媒体流;按照预定混音规则对每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流;将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端。

在本发明实施例中还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:通过集群控制功能tcf模块确定拥有话权的多个主叫终端和未拥有话权的多个被叫终端;获取拥有话权的多个主叫终端中每个主叫终端的上行媒体流;按照预定混音规则对每个主叫终端的上行媒体流进行混音操作,得到多个混音媒体流;将多个混音媒体流传输至拥有话权的多个主叫终端和未拥有话权的多个被叫终端。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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