一种用于电话会议的分布式混音方法与流程

文档序号:15752204发布日期:2018-10-26 17:59阅读:178来源:国知局
一种用于电话会议的分布式混音方法与流程

本发明属于多媒体通信领域,尤其涉及一种用于电话会议的分布式混音方法。



背景技术:

电话会议系统作为实时多媒体通信业务的典型代表,随着网络的普及,近几年得到了迅猛发展。在电话会议中,包括一个会议主持终端和若干个成员终端,会议主持终端负责发起电话会议,对会议状态进行监视,并控制会议成员终端退出电话会议、邀请其他终端加入电话会议、指定成员终端是否具备发话权限等。

当电话会议中多个终端同时发话时,通常采用集中式混音或分布式混音的方式对多路语音进行混音,使每个终端能够同时听到多个与会终端的声音。集中式混音由一个中心服务器统一进行混音,各会议终端都将语音发送到中心服务器,中心服务器混音后将结果分别分发给每个会议终端。分布式混音不需要设置混音服务器,每个会议终端将语音分别发送给会议中的其他终端,并对接收到的多路语音进行混音。集中式混音的优点是语音流处理方便,但对中心服务器的性能要求较高。分布式混音不需要混音服务器,但对终端的能力要求较高,并且占用网络带宽较多。为了发挥集中式混音和分布式混音二者的优点,提出了分级混音方案,在每个分域部署一台服务器,负责本域内终端的混音,会议主持终端所在域的服务器作为中心服务器,对各域服务器的混音结果进行二次混音。分级混音方案与分布式混音相比,每个分域只输出一路语音,节省了带宽,但需要设置多个混音服务器,由于每个分域服务器都有可能成为中心服务器,因此每个分域都需要部署高性能服务器。



技术实现要素:

本发明的目的在于召开ip电话会议时,提出了一种用于电话会议的分布式混音方法,能够在无需部署混音服务器、会议终端故障和混音路数过多的情况下,均能实现多路语音的混音。

为了达到上述目的,本发明包括以下步骤:

步骤1,生成会议状态报文:会议终端加入电话会议后,每个会议终端以本网段的广播地址为目的地址,周期性地在本网段内发送该会议终端的会议状态信息,会议状态信息包括终端地址、主持标识和主持地址。同一网段内的所有会议终端都能收到彼此的会议状态信息,这些会议终端组成一个分组;

步骤2,选择混音代理;

步骤3,混音处理:各级混音代理负责对本分组内所有会议终端的语音进行混音处理。

步骤1中,所述主持标识表示发送会议状态报文的会议终端是否为电话会议主持,如果主持标识为1,表示该会议终端是电话会议主持,否则为电话会议成员;主持地址表示电话会议主持的ip地址。

步骤2包括如下步骤:

步骤2-1,判断本会议终端是否为电话会议主持,如果是电话会议主持,则选择本会议终端为混音代理,该混音代理负责接收本分组内会议终端的语音,以及其他分组内混音代理的语音并进行混音处理。混音之后,会议主持将混音结果分别发送给本分组内的会议终端、其他分组的混音代理,由其他分组的混音代理将最终混音结果分发给该分组内的会议终端;如果不是电话会议主持,继续执行步骤2-2;

步骤2-2,会议终端对收到的会议状态报文进行过滤,只保留与本会议终端具有相同电话会议主持的会议状态报文;

步骤2-3,如果没有收到与本会议终端具有相同电话会议主持的会议状态报文,则选择本会议终端为混音代理,该混音代理负责对本分组内会议终端的语音进行混音,并把混音结果发送给会议主持进行二次混音处理,同时,该混音代理接收会议主持的混音结果,分发给本分组内的会议终端;否则继续执行步骤2-4;

步骤2-4,如果收到电话会议主持发送的会议状态报文,则选择电话会议主持为混音代理,把本会议终端的语音发送给该混音代理进行混音,同时,本会议终端接收会议主持的混音结果。否则继续执行步骤2-5;

步骤2-5,对所有会议状态报文中的会议终端地址进行排序,如果本会议终端的地址为最小,则选择本会议终端为混音代理,该混音代理负责对本分组内会议终端的语音进行混音,并把混音结果发送给会议主持进行二次混音处理,同时,该混音代理接收会议主持的混音结果,分发给本分组内的会议终端;如果本会议终端的地址非最小,则选择地址最小的会议终端作为混音代理,把本会议终端的语音发送给该混音代理进行混音,同时,本会议终端接收该混音代理的混音结果。

步骤3包括:当有新的语音信号需要混音,或者混音信号中有语音信号结束时,混音代理都根据自身配置的混音能力参数m,对混音路数n进行判断,如果n>m,则对所有语音信号的能量进行统计,并以信号能量为第一顺序、信号源ip地址为第二顺序,从大到小把语音信号排列为s1、s2、…、sn,si表示第i个语音信号(1≤i≤n),只选择前m路信号s1、s2、…、sm进行混音,否则表示混音路数没有超出混音代理的混音能力,则对所有语音信号进行混音。

本发明方法按照网段对会议终端进行分组,同一分组中的终端依据选举算法自动选择一个终端作为混音代理,负责本分组内的混音处理,会议主持所在的分组选择会议主持终端负责混音处理。

各个混音代理对本分组内的语音进行混音之后,将结果送到会议主持终端进行二次混音。会议主持终端混音之后,通过混音代理将最终混音结果分发给会议终端。

混音代理和会议主持终端对多路语音进行混音时,如果混音路数超过了终端的混音能力,则按照语音信号的能量对多路语音从大到小进行排序,只选择信号能量较大的语音进行混音。这样,能量较大的语音能够随时中断能量较小的语音,而不需等待能量较小的语音结束时才参与混音,混音结果更加符合实际。

本发明主要针对现有混音方式需要配置高性能服务器及占用带宽较多的不足,提出了一种用于电话会议的分布式混音方法。首先,按照网段对参与会议的终端进行分组,每个分组中选择一个终端作为混音代理,负责本组的混音处理。其次,会议主持终端所在的分组作为中心分组,负责对各组的混音结果进行二次混音。最后,当语音路数超过终端的混音能力时,终端根据信号能量对多路语音进行排序,按照从大到小的顺序选择多路语音进行混音处理。

本发明无需部署高性能混音服务器,每个分组中的混音代理由选举算法自动产生,混音代理故障和混音路数过多等情况下均能进行正常混音。

本发明与已有技术相比,其显著优点为:1)无需部署高性能混音服务器。2)混音代理选举产生,故障时可自动接替。

附图说明

下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述或其他方面的优点将会变得更加清楚。

图1为会议状态报文格式。

图2为混音处理流程。

具体实施方式

下面结合附图及实施例对本发明做进一步说明。

本发明包括以下步骤:

步骤1,生成会议状态报文:会议终端加入电话会议后,每个会议终端以本网段的广播地址为目的地址,周期性地在本网段内发送该会议终端的会议状态信息,会议状态信息包括终端地址、主持标识和主持地址。同一网段内的所有会议终端都能收到彼此的会议状态信息,这些会议终端组成一个分组。

步骤2,选择混音代理;

步骤3,混音处理:各级混音代理负责对本分组内所有会议终端的语音进行混音处理。

步骤1中,所述主持标识表示发送会议状态报文的会议终端是否为电话会议主持,如果主持标识为1,表示该会议终端是电话会议主持,否则为电话会议成员;主持地址表示电话会议主持的ip地址。

步骤2包括如下步骤:

步骤2-1,判断本会议终端是否为电话会议主持,如果是电话会议主持,则选择本会议终端为混音代理,该混音代理负责接收本分组内会议终端的语音,以及其他分组内混音代理的语音并进行混音处理。混音之后,会议主持将混音结果分别发送给本分组内的会议终端、其他分组的混音代理,由其他分组的混音代理将最终混音结果分发给该分组内的会议终端;如果不是电话会议主持,继续执行步骤2-2;

步骤2-2,会议终端对收到的会议状态报文进行过滤,只保留与本会议终端具有相同电话会议主持的会议状态报文;

步骤2-3,如果没有收到与本会议终端具有相同电话会议主持的会议状态报文,则选择本会议终端为混音代理,该混音代理负责对本分组内会议终端的语音进行混音,并把混音结果发送给会议主持进行二次混音处理,同时,该混音代理接收会议主持的混音结果,分发给本分组内的会议终端;否则继续执行步骤2-4;

步骤2-4,如果收到电话会议主持发送的会议状态报文,则选择电话会议主持为混音代理,把本会议终端的语音发送给该混音代理进行混音,同时,本会议终端接收会议主持的混音结果;否则继续执行步骤2-5;

步骤2-5,对所有会议状态报文中的会议终端地址进行排序,如果本会议终端的地址为最小,则选择本会议终端为混音代理,该混音代理负责对本分组内会议终端的语音进行混音,并把混音结果发送给会议主持进行二次混音处理,同时,该混音代理接收会议主持的混音结果,分发给本分组内的会议终端;如果本会议终端的地址非最小,则选择地址最小的会议终端作为混音代理,把本会议终端的语音发送给该混音代理进行混音,同时,本会议终端接收该混音代理的混音结果。

步骤3包括:当有新的语音信号需要混音,或者混音信号中有语音信号结束时,混音代理都根据自身配置的混音能力参数m(m的值取决于混音代理中混音处理芯片的能力,一般取值不大于5),对混音路数n进行判断(实际使用中,n是指在电话会议中会议主持允许同时发话的会议终端数,一般取值不大于10),如果n>m,则对所有语音信号的能量进行统计,并以信号能量为第一顺序、信号源ip地址为第二顺序,从大到小把语音信号排列为s1、s2、…、sn,si表示第i个语音信号(1≤i≤n),只选择前m路信号s1、s2、…、sm进行混音,否则表示混音路数没有超出混音代理的混音能力,则对所有语音信号进行混音。

实施例:

假设有10个会议终端召开电话会议,会议终端分别编号为a、b、c、d、e、f、g、h、i、j,其中a为会议主持,a、b、c位于一个网段,其他会议终端位于另外一个网段。

当会议建立后,所有会议终端以1秒为周期在网段内发送会议状态报文。会议终端a、b、c按照网段位于分组一,并且通过会议状态报文选择会议主持a为混音代理;会议终端d、e、f、g、h、i、j按照网段位于分组二,并且通过会议状态报文选择会议终端h为混音代理。每个会议终端的混音能力相同,都能同时对5路语音进行混音,即m=5。

考虑除了会议终端d之外,其他9个会议终端同时发话的情况。

在分组一中,会议主持a负责对本分组中的会议终端、分组二中混音代理h的语音信号进行混音,即需要对a、b、c、h的语音信号进行混音,由于混音路数n=4且n<m,会议主持直接进行混音处理,得到电话会议的最终混音结果,分别发送给会议终端b、c和混音代理h。

在分组二中,混音代理h负责对本分组中所有会议终端的语音信号进行混音,并把混音结果发送给会议主持进行二次混音,同时把会议主持的混音结果作为电话会议的最终混音结果,发送给本分组中的所有会议终端。根据假设的条件,混音代理h需要对会议终端e、f、g、h、i、j的语音信号进行混音,收到这些会议终端的语音信号后,混音代理判断混音路数为n=6,且n>m,则对6个会议终端的语音信号按照能量和ip地址从大到小排序为:e、h、f、i、j、g,混音代理h选择前5个会议终端e、h、f、i、j的语音进行混音,得到分组二的混音结果,并把该混音结果发送给会议主持a进行二次混音。同时,混音代理h收到会议主持a的混音结果后,将会议主持的混音结果作为电话会议的最终混音结果,分别发送给分组二中的所有会议终端d、e、f、g、i、j。如果在通话过程中,分组二中的会议终端d开始发话,语音信号送到混音代理h,混音代理h判断混音路数发生变化,n=7且n>m,重新对7个会议终端的语音按照能量和ip地址从大到小排序为:e、h、d、f、i、j、g,混音代理h选择前5个会议终端e、h、d、f、i的语音进行混音,即立即终止对会议终端j语音信号的混音,把会议终端d的语音信号加入混音,并把混音结果发送给会议主持进行二次混音。

当会议终端j结束通话,混音代理h判断混音路数发生变化,n=6且n>m,重新对6个会议终端的语音按照能量和ip地址从大到小排序为:e、h、d、f、i、g,前5个会议终端排序没有变化,混音代理h维持当前混音选择,并把混音结果发送给会议主持进行二次混音。同时,混音代理h收到会议主持a的混音结果后,将会议主持的混音结果作为电话会议的最终混音结果,分别发送给分组二中的所有会议终端d、e、f、g、i、j。

如果会议终端e也结束通话,混音代理h判断混音路数发生变化,n=5且m=n,混音代理h直接对5个会议终端h、d、f、i、g的语音进行混音,并把混音结果发送给会议主持进行二次混音。同时,混音代理h收到会议主持a的混音结果后,将会议主持的混音结果作为电话会议的最终混音结果,分别发送给分组二中的所有会议终端d、e、f、g、i、j。

本发明主要针对ip电话会议中集中式混音和分级混音方案需要部署高性能混音服务器的问题,按照网段对参与会议的终端进行分组,每个分组选择一个终端负责本组终端的混音处理,然后将混音结果送到会议主持终端进行二次混音。下面结合附图对本发明做进一步详细描述。

(1)会议状态报文生成

加入电话会议后,每个会议终端以1秒为周期在本网段内广播该终端的会议状态信息,报文格式如图1所示。

图1中终端地址表示报文发送者的ip地址。主持标识表示报文发送者是否为会议主持,如果主持标识为1,表示是电话会议主持,否则为电话会议成员。主持地址表示会议主持终端的ip地址。

(2)混音代理选择

会议终端每次发送完会议状态报文后,按照如下选举算法进行混音代理选择:

第一步,判断本终端是否为会议主持,如果是会议主持,则选择本终端为混音代理,否则继续以下步骤;

第二步,对收到的会议状态报文进行过滤,只保留与本终端具有相同会议主持的会议状态报文;

第三步,如果没有收到有效的会议状态报文,则选择本终端为混音代理。否则继续以下步骤;

第四步,如果收到会议主持发送的会议状态报文,则选择会议主持为混音代理,本终端产生的语音后续都需要发送到该混音代理进行混音处理。否则继续以下步骤;

第五步,对所有会议状态报文中的终端地址进行排序,如果本终端的地址为最小,则选择本终端为混音代理;如果本终端的地址非最小,则选择地址最小的终端作为混音代理,本终端产生的语音后续都需要发送到该混音代理进行混音处理。

(3)混音处理

各级混音代理负责对本分组内所有会议终端的语音进行混音处理,在混音时,混音代理首先对混音路数进行判断,如果混音路数超过混音代理的混音能力,则对信号能量进行统计并按照能量从大到小进行排列,只选择信号能量大的语音进行混音。混音处理流程如图2所示。

通过本发明提出的分布式混音方法,无需部署高性能混音服务器,并且每个分组中的混音代理由选举算法自动产生,混音代理故障和混音路数过多等情况下均能进行正常混音。

本发明提供了一种用于电话会议的分布式混音方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

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