一种基于无线Mesh网络的近场音频收发系统及方法与流程

文档序号:15282937发布日期:2018-08-28 23:45阅读:206来源:国知局

本发明涉及音频收发技术领域,具体的说是一种基于无线mesh网络的近场音频收发系统及收发方法。



背景技术:

目前,在音频收发领域,接收音频的难度普遍要大于发出音频的难度,特别是在近场收音中,回音的存在导致收音效果不好,因为麦克风的灵敏度很高,只要有一点声音都能被收入,也就是除了音源本身之外回音的部分也被收入,这就导致收入的音频中噪音很多。

现有技术中,克服近场收音的高噪音主要采用两种方法。一是利用回声算法消除噪声,但是因为回声算法大都非常复杂,对硬件设备的性能要求很高,而且计算过程耗时较长,会造成音频传输延迟提高,降低收音系统的效率。而是通过多硬件来达到消除空间回声的目的,需要大范围地利用高灵敏度的麦克风,而且需要多个麦克风组合成为阵列,才能准确地识别出噪音并且将其消除掉,实现准确地收音,但是这样会造成设备复杂度和设备成本大大提高。

而且,现有技术中音频收发系统大多数采用有线连接,虽然有线连接具有非常高的传输效率和抗干扰性能,但是走线困难,给使用带来不便。



技术实现要素:

为了解决现有技术中的不足,本发明提供一种基于无线mesh网络的近场音频收发系统及收发方法,执行终端只具有收音功能或者发音功能,从而有效避免了喇叭的振动对麦克风的收音造成影响,并且能够避免采用有线连接带来的走线困难和使用不便的问题。

为了实现上述目的,本发明采用的具体方案为:

一种基于无线mesh网络的近场音频收发系统,包括至少一个主机、至少一个执行终端和至少一个中继终端,所述中继终端与所述主机和所述执行终端均无线通信连接,所述执行终端包括收音功能或者发音功能;所述主机用于从所述执行终端获取上行音频信号、向所述执行终端发送下行音频信号和向所述执行终端发送控制信号;所述执行终端执行所述收音功能时用于采集第一声音并且将所述第一声音转换为上行音频信号,然后将所述上行音频信号发送给所述主机;所述执行终端执行所述发音功能时用于从所述主机获取下行音频信号并将所述下行音频信号转换为第二声音,然后发出所述第二声音;所述中继终端用于在所述主机和所述执行终端之间转发所述上行音频信号、所述下行音频信号和所述控制信号。

优选的,所述中继终端与所述主机和所述执行终端均蓝牙连接。

一种基于无线mesh网络的近场音频收发系统的收发方法,包括如下步骤:步骤1、构建所述音频收发系统;步骤2、所述主机生成所述控制信号,所述控制信号包括动作指令;步骤3、所述主机将所述控制信号发送给所述中继终端,所述中继终端将所述控制信号发送给所述执行终端;步骤4、所述执行终端接收到所述控制信号后执行所述动作指令。

优选的,所述步骤1的具体方法包括:步骤1.1、所述主机、所述中继终端和所述执行终端上电启动;步骤1.2、所述主机生成询问数据包,并且将所述询问数据包广播给所有所述中继终端,然后所述主机生成一级链表,所述一级链表中包括所述主机和与所述主机一跳连接的所述中继终端;步骤1.3、所有所述中继终端将所述询问数据包转发给自身覆盖范围内的所有所述执行终端,然后所述中继终端生成二级链表并且将所述二级链表发送给所述主机,所述二级链表中包括所述中继终端和与所述中继终端一跳连接的所述执行终端。

优选的,所述步骤2中,所述动作指令为收音指令或者发音指令。

优选的,所述步骤3中,若所述动作指令为收音指令,则所述主机将所述控制信号发送给所述中继终端,所述中继终端将所述控制信号转发给所述执行终端;若所述动作指令为发音指令,则所述主机同时生成所述下行音频信号,并且将所述控制信号和所述下行音频信号发送给所述中继终端,所述中继终端将所述控制信号和所述下行音频信号发送给所述执行终端。

优选的,所述步骤4中,若所述执行终端接收到包括所述收音指令的所述控制信号,则所述执行终端执行所述收音功能;若所述执行终端接收到包括所述发音指令的控制信号和所述下行音频信号,则所述执行终端执行所述发音功能;所述执行终端执行收音功能的具体过程为:步骤4.1、所述执行终端采集现场的第一声音,然后将所述第一声音转化为上行音频信号;步骤4.2、所述执行终端将所述上行音频信号广播出去;步骤4.3、所述与该执行终端一条连接的所述中继终端接收到所述上行音频信号,然后将所述上行音频信号转发给所述主机;步骤4.4、所述主机将第一个接收到的所述上行音频信号保存,将接收到的其余所述上行音频信号丢弃。

优选的,所述执行终端在发送所述上行音频信号之前利用自适应差分脉冲编码调制方法将所述上行音频信号为压缩为若干个长度为128kbit的数据单元,并且对所述数据单元进行拆分。

优选的,拆分具体的方法为:首先将所述数据单元拆分为四个长度为32kbit的码片,然后将所述码片拆分为16个长度为2kbit的数据单元,最后将所有所述数据单元逐个发送给所述中继终端。

优选的,所述步骤4.2中,所述上行音频信号包括信号标识、目标标识、自身标识和上行音频数据,所述信号标识用于对所述上行音频信号进行标识,所述目标标识用于对所述主机进行标识,所述自身标识用于对所述执行终端自身进行标识。

本发明中执行终端只具有收音功能或者发音功能,从而有效避免了喇叭的振动对麦克风的收音造成影响。并且本发明基于无线mesh网络构建能够快速、有效地完成音频的传输,而且避免了采用有线连接带来的走线困难的问题。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明的收发系统结构示意图;

图2是本发明实施例二的收发系统扩展结构示意图;

图3是本发明收发方法的流程图。

具体实施方式

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

请参阅图1和图3,图1是本发明的收发系统结构示意图,图2是本发明实施例二的收发系统扩展结构示意图,图3是本发明收发方法的流程图。

实施例1

如图1-3所示,一种基于无线mesh网络的近场音频收发系统,包括一个主机、至少一个执行终端和至少一个中继终端,中继终端与主机和执行终端均通过蓝牙连接,使系统利用蓝牙mesh网络进行数据通信,一个中继终端可以蓝牙连接多个执行终端,一个执行终端也可以同时蓝牙连接多个中继终端。

主机用于从执行终端获取上行音频信号、向执行终端发送下行音频信号和向执行终端发送控制信号。

执行终端包括收音功能或者发音功能,每个执行终端只包括一种功能。执行终端执行收音功能时用于采集第一声音并且将第一声音转换为上行音频信号,然后将上行音频信号发送给主机。执行终端执行发音功能时用于从主机获取下行音频信号并将下行音频信号转换为第二声音,然后发出第二声音。

中继终端用于在主机和执行终端之间转发上行音频信号、下行音频信号和控制信号。

一种基于无线mesh网络的近场音频收发系统的收发方法,包括如下步骤1~步骤4。

步骤1、构建音频收发系统,具体的构建方法包括步骤1.1~步骤1.3。

步骤1.1、主机、中继终端和执行终端上电启动。

步骤1.2、主机生成询问数据包,并且将询问数据包广播给所有中继终端,中继终端上电启动后采用扫描模式接收信息,收到询问数据包后,中继终端反馈地址信息给主机,然后主机生成一级链表,一级链表中包括主机和与主机一跳连接的中继终端。因为主机是计算能力最强和电源最为充足的,所以从主机开始搜索附近的中继终端和执行终端,速度更快。

步骤1.3、所有中继终端将询问数据包转发给自身覆盖范围内的所有执行终端,执行终端上电启动后采用扫描模式接收信息,收到询问数据包后,执行终端反馈地址信息给中继终端,然后中继终端生成二级链表并且将二级链表发送给主机,二级链表中包括中继终端和与中继终端一跳连接的执行终端。主机将一级链表和二级链表进行合并,将整个网络中每一个终端的地址信息存储在主机中,进而使主机在确定目标的执行终端之后可以选择通过哪些中继终端与执行终端进行数据交互。至此,系统构建完毕,可以开始进行音频收发。

步骤2、主机生成控制信号,控制信号包括动作指令,动作指令为收音指令或者发音指令。主机作为收发系统的核心,可以由操作人员通过主机控制所有的执行终端,从而提高工作效率,因此应该由主机来产生控制信号。

步骤3、若动作指令为收音指令,则主机将控制信号发送给中继终端,中继终端将控制信号转发给相应的执行终端;若动作指令为发音指令,则主机同时生成下行音频信号,并且将控制信号和下行音频信号发送给中继终端,中继终端将控制信号和下行音频信号发送给相应的执行终端。因为执行终端包括了两种功能,所以主机发出的控制信号对应这两种功能。

步骤4、若具有收音功能的执行终端接收到包括收音指令的控制信号,则执行终端执行收音功能;若具有发音功能的执行终端接收到包括发音指令的控制信号和下行音频信号,则执行终端执行发音功能。

步骤4中,执行终端执行收音功能的具体过程包括步骤4.1~步骤4.4。

步骤4.1、执行终端采集现场的第一声音,然后将第一声音转化为上行音频信号。

步骤4.2、执行终端将上行音频信号通过广播连接模式广播出去,上行音频信号包括信号标识、目标标识、自身标识和上行音频数据,信号标识用于对上行音频信号进行标识,目标标识用于对主机进行标识,自身标识用于对执行终端自身进行标识。因为上行音频信号需要中继终端进行转发,所以需要在上行音频信号内加入标识,每经过一个终端都在里面添加一个该终端的标识,从而使主机能够获得精确的转发路径,进而根据转发路径对第一链表和第二链表进行优化。

步骤4.3、与该执行终端一条连接的中继终端接收到上行音频信号,然后将上行音频信号转发给主机。

步骤4.4、主机将第一个接收到的上行音频信号保存,将接收到的其余上行音频信号丢弃。因为主机只需要接收一次上行音频信号即可,所以无需保存延迟较长的其余上行音频信号,从而节省存储空间,提高处理速度。

执行终端在发送上行音频信号之前利用自适应差分脉冲编码调制方法将上行音频信号为长度128kbit的数据单元压缩为若干个长度为32kbit的数据单元,并且对数据单元进行拆分。拆分具体的方法为:因由蓝牙技术组成的mesh网络中,中继终端、执行终端、主机等单个模块在广播连接模式时,数据的存储数量为23字节,不能满足32kbit的传输数量。在mesh网络中的多跳连接模式时,数据的存储数量为253字节,也就是253bitx8k为2kbit。而蓝牙技术组成的mesh网络中,传输一个数据包的时间大约为20~30ms,所以,在mesh网络处于多跳连接模式时,可将一个长度为32kbit的数据单元拆分为16个长度为2kbit的数据单元,最后将所有数据单元数据单元逐个发送给中继终端。采用压缩技术,能够减小上行音频信号的数量大小,加快发送速度,降低网络延迟。而且因为采用的是蓝牙mesh网络,蓝牙技术对数据包的发送有其要求,所以需要对数据单元进行拆分,从而满足蓝牙技术的传输需要。

本发明中的mesh网络具有2种连接模式:广播连接模式、多跳连接模式。执行终端在发送上行音频信号时,是通过广播连接模式发送给主机,主机收到信息后,通过自身标识确定是哪个执行终端后,再通过整个网络存储的一级链表和二级链表,来计算最佳的传输路径,通过多跳连接的方式,来传输控制信号;同理,在执行终端与主机建立连接后,在本次传输任务中,也可采用主机的多跳连接的传输路径反馈上行音频信号给主机,最佳的传输路径的方式可以是以下几种但不限于:

1.根据和主机连接的传输时间进行判断,在一级链表和二级链表中得到的连接传输时间最短的路径为最佳的传输路径。2.根据主机接到上行音频信号控制信号的速度进行判断,在一级链表和二级链表中得到的速度最快的为最佳的传输路径。3.根据各个执行终端和中继终端的任务负担程度进行判断,在一级链表和二级链表中由负担最小的执行终端和中继终端进行传输,这种处理方式,主机必须知晓各个执行终端和中继终端目前的工作量。

在本实施例中,执行终端只具有收音功能或者发音功能,从而有效避免了喇叭的振动对麦克风的收音造成影响。并且本发明基于无线mesh网络构建能够快速、有效地完成音频的传输,而且避免了采用有线连接带来的走线困难的问题。

在本发明中,应用多个执行终端来收音,每个收音的范围有限,不需要高灵敏的的麦克风,利用麦克风本身的声音阻尼系数(当音量小的时候,很快的衰减)来减少噪声,就可以使近场收音达到远场收音的技术效果,所以不会造成回声的问题。

实施例2

基于实施例1,本发明还提供一种扩展系统,扩展系统中可以包括多个主机,多个主机、多个中继终端、多个执行终端可以组成若干个主机的mesh网络。如图2所示,在这个多个主机的mesh网络中,此实施例的收发方法中与实施例1大致相同,不同之处在于多个主机可以并行输出控制信号,也就是下列步骤不同:

步骤1.2、多个主机生成询问数据包,并且将询问数据包广播给所有中继终端,中继终端上电启动后采用扫描模式接收信息,收到询问数据包后,中继终端反馈地址信息给所有主机,然后所有主机生成一级链表,一级链表中包括主机本身、其它主机和与主机本身一跳连接的中继终端。

步骤1.3、所有中继终端将询问数据包转发给自身覆盖范围内的所有执行终端,执行终端上电启动后采用扫描模式接收信息,收到询问数据包后,执行终端反馈地址信息给中继终端,然后中继终端生成二级链表并且将二级链表发送给所有主机,二级链表中包括中继终端和与中继终端一跳连接的执行终端。所有主机将一级链表和二级链表进行合并,将整个网络中每一个终端、主机的地址信息存储在所有主机中。

在步骤1.3中,因所有主机内部都有主机链表、一级链表、二级链表,所有主机可根据链表信息,自行判断由哪个主机输出控制信号,使所有主机在确定目标的执行终端之后可以选择通过哪些主机、中继终端、执行终端进行数据交互。至此,系统构建完毕,可以开始进行音频收发。

在多个主机的mesh网络中,多个主机可以并行输出控制信号,也可自行判断由哪个主机输出控制信号,就可避免单一主机出现无法连接、导致整个mesh网络瘫痪的问题。自行判断的方式可以是以下几种但不限于:

1.根据和服务器连接传输时间进行判断,由连接传输时间最短的主机进行传输。2.根据主机接到音频信号控制信号的速度进行判断,取速度最快的主机进行传输。3.根据主机的任务负担程度进行判断,由负担最小的主机进行传输,这种处理方式,主机必须相互传输目前的工作量。

步骤4.2、执行终端将上行音频信号广播出去,上行音频信号包括信号标识、目标标识、自身标识和上行音频数据,信号标识用于对上行音频信号进行标识,目标标识用于对多个主机进行标识,自身标识用于对执行终端自身进行标识。因为上行音频信号需要中继终端进行转发,所以需要在上行音频信号内加入标识,每经过一个终端都在里面添加一个该终端的标识,从而使主机能够获得精确的转发路径,进而根据转发路径对第一链表和第二链表进行优化。

在首次发送的过程中,执行终端根据已有的链表选择中继终端和主机,然后在每次发送的过程不断地对链表进行优化。具体的优化方法如上所述在每次转发的时候将经过的节点号码加入控制码内,最终到达主机的时候,根据控制码内的节点的顺序和链表的顺序进行最短路径比较,如果控制码内的路径小于原本链表内的路径,则对于链表内的路径做修改。

步骤4.3、与该执行终端一条连接的中继终端接收到上行音频信号,然后将上行音频信号转发给所有主机。

步骤4.4、主机将第一个接收到的上行音频信号保存,将接收到的其余上行音频信号丢弃。因为主机只需要接收一次上行音频信号即可,所以无需保存延迟较长的其余上行音频信号,从而节省存储空间,提高处理速度。

这样执行终端在发送上行音频信号的时候可以选择某一个主机网络进行发送,使该主机网络内的所有主机都能够接收到上行音频信号。

本实施例能够适用于规模更大的音频收发现场,完成多个不同地点的音频协同收发。

在本发明中,应用多个执行终端来收音,每个收音的范围有限,不需要高灵敏的的麦克风,利用麦克风本身的声音阻尼系数(当音量小的时候,很快的衰减)来减少噪声,就可以使近场收音达到远场收音的技术效果,所以不会造成回声的问题。

在上述两个实施例中,描述了一级链表和二级链表,以此类推,根据需要,也可以增加到三级链表、四级链表、五级链表等等,每一级链表中都同时具有执行终端和中继终端的功能,可根据程序来选择某个终端是作为执行终端还是中继终端。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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