一种Android手机的麦克风阵列及其通信方法与流程

文档序号:11279745阅读:3358来源:国知局
一种Android手机的麦克风阵列及其通信方法与流程

本发明涉及语音处理和通信技术领域,特别android手机的麦克风阵列及其通信方法,适用于多人会话环境。



背景技术:

麦克风阵列的原型是多路拾音系统,这种系统多用在一些特殊的场合,如教室、剧院、会议厅等场合,用来对声音做一些特殊的处理。麦克风阵列技术相对于单麦克风系统有很多优点,已成为语音增强及语音信号处理的重要部分。语音增强和声源定位已经成为阵列技术中不可缺少的部分,在视频会议,智能机器人,助听器,智能家电,通信,智能玩具,车载领域都需要声源定位和语音增强。各种信号处理技术,阵列信号处理技术都陆续结合到麦克风阵列的语音处理系统当中,并逐渐得到算法改进和进一步的广泛应用。

目前,在手机这类可移动设备上都能够看到双麦或三麦的麦克风阵列,一个麦克风用于收集人声,一个麦克风在机身顶端,具备背景噪声采集功能,用于降噪消除回音,确保远端听到的声音清晰。

上面这种是一对一,近场模型非常固定的情况。然而,在多对多的通话情况下,会话人员可能分布在10平米以上空间的不同位置,麦克风阵列想要获得理想的效果就没那么容易了,往往需要经过精心地布置,比如确定好各个麦的位置并放上不同灵敏度的全向麦或定向麦,预估近场模型等。这些要求间接地限制了麦克风阵列的使用范围,所以往往只能在剧院或者较高级的会议厅里面看到麦克风阵列的使用,而平时更多使用的是单麦克风系统,会话人员说话时需要获得麦克风使用权才能发声。



技术实现要素:

本发明要解决的技术问题,是针对多人会话环境,提供一种android手机的麦克风阵列及其通信方法,将多台android手机经由网络连接到一个音频处理终端,然后借助android手机的麦克风组成一个简单的麦克风阵列,音频处理终端实时获取各手持设备麦采集到的音频流,处理器基于各麦克风的声压选择对应的拾音数据,经过音频处理后作为会话的输入源传递给主机,而不需要会话人员手动去获取麦克风使用权。

本发明的麦克风阵列是这样实现的:一种android手机的麦克风阵列,包括主机、音频处理终端以及复数个android手机,且所述主机、音频处理终端以及复数个android手机均连接在同一个局域网内;其中,

在android手机加入局域网后会发广播报文到所述局域网内,告知本机麦克风可以加入到麦克风阵列;音频处理终端在所述局域网内查找可以加入到麦克风阵列的android设备,并连接需要加入的android手机;然后由音频处理终端控制被连接的android手机打开本地麦克风;并由该本地麦克风将采集到音频流发送给音频处理终端。

进一步的,所述用户连接需要加入的android手机的连接是用户通过操作主机的音频输入源进行手动连接。

进一步的,用户连接好需要加入的android手机后,将连接好的android手机均匀分布到会话人员周围。

进一步的,所述音频处理终端根据接收到的音频流校验一下所有的麦克风是否正常。

进一步的,所述android手机安装一个安装包用于管理本地麦克风和发广播报文到所述局域网内,所述安装包包含连接管理模块和音频采集模块,所述连接管理模块负责将当前的android手机连接到音频处理终端并虚拟成麦克风阵列中的一个麦克风,之后所述音频采集模块开启一个循环采集线程,将android手机麦克风采集到音频数据打包后发送给音频处理终端。

本发明的通信方法是这样实现的:一种android手机的麦克风阵列的通信方法,基于本发明上述麦克风阵列进行通信的方法;所述音频处理终端获取来自各android手机的音频数据,处理之后传递给所述主机,所述主机编码发送到对端主机。

进一步的,所述处理具体是:分别对每个android手机对应的一路数据做消噪处理和回声处理,剔除无用信号,之后,对每一路数据做能量分析,然后基于分析结果,选取连续500ms内能量最高的一路语音数据传递给所述主机。

本发明具有如下优点:借用android手机麦克风拾音,因为android手机在生活中已经很普及,所以整个麦克风阵列搭建非常便利,即搭即用,不像传统的麦克风阵列,需要布置在固定会场;同时,因为麦克风均匀分布到了会话人周围,所以对麦克风的灵敏度和指向性没有要求,基本上只要一两米范围内有android手机就可以实现较稳定的语音强度,不会有忽大忽小的问题。

附图说明

下面参照附图结合实施例对本发明作进一步的说明。

图1为本发明麦克风阵列的架构图。

图2为本发明麦克风阵列一实施例的实现过程的流程图。

图3为本发明麦克风阵列一实施例的通信方法的流程图。

具体实施方式

如图1所示,本发明的麦克风阵列包括主机、音频处理终端以及复数个android手机,且所述主机、音频处理终端以及复数个android手机均连接在同一个局域网内;需要强调的是,本发明的android手机不仅仅指手机本身,还可是具有麦克风功能的其它android手持设备;本发明的音频处理终端用于对音频数据做消噪处理和回声处理并做能量分析,其可以是移动终端,也可以是固定终端,可以是独立的设备,也可以集成在主机中。

在android手机加入局域网后会发广播报文到所述局域网内时,会告知本机麦克风可以加入到麦克风阵列;音频处理终端在所述局域网内查找可以加入到麦克风阵列的android设备,然后用户通过操作主机的音频输入源,进行手动连接需要加入的android手机;用户连接好需要加入的android手机后,将连接好的android手机均匀分布到会话人员周围;然后由音频处理终端控制被连接的android手机打开本地麦克风;并由该本地麦克风将采集到音频流发送给音频处理终端;最后所述音频处理终端根据接收到的音频流校验一下所有的麦克风是否正常。

其中,所述android手机安装一个安装包用于管理本地麦克风和发广播报文到所述局域网内,以告知本机麦克风可以加入到麦克风阵列。该安装包包含连接管理模块和音频采集模块。连接管理模块负责将当前的android手机连接到音频处理终端并虚拟成麦克风阵列中的一个麦克风;所述音频采集模块则在连接管理模块创建好麦克风后开启一个循环采集线程,将手机麦克风采集到音频数据打包后发送给音频处理终端。其中,两个模块的功能开关分别由安装包安装后的软件界面上的两个虚拟按钮实现,连接管理模块对应“连接按钮”,音频采集模块对应“发送按钮”。具体流程如下:

1、将android手机a经由wifi连接到音频处理终端所处局域网;

2、点击“连接按钮”,android手机a发送广播报文到局域网中,等待音频处理终端回应;(广播报文会告知音频处理终端对应android手机a的连接状态、名称、wifi信号强度等)

3、音频处理终端收到广播报文后,回复ack信息,完成握手协议,同时,将该android手机a添加到麦克风阵列;(ack信息会告知android手机a音频处理终端的名称以及音频数据的格式format、采样率samplerate、打包长度audiolength和编码格式)

4、android手机a收到ack信息之后正式创建连接,显示“已连接”状态,并根据音频数据格式、采样率、编码格式和打包长度初始化音频采集模块;

5、点击android手机a的“发送按钮”,android手机a将调用android的“audiorecord”接口,基于前一步骤中的参数创建音频采集线程;

6、音频采集线程获取到的音频数据长度等于打包长度后,将音频数据编码后经udp发送给音频处理终端;

7、重复步骤6,直到当音频处理终端主动断开与android手机a的连接时,音频处理终端会先通知android手机a断开连接,android手机a收到通知后马上停止采集线程,并回复音频处理终端通知已收到,然后断开连接。也可以直接点击android手机a上的“连接按钮”,通知音频处理终端“断开连接请求”,终端收到后回复确认,断开申请生效,android手机a主动停止采集线程,并恢复未连接状态。

本发明的麦克风阵列组建好后,通信时按下述方法进行;所述音频处理终端获取来自各android手机的音频数据,处理之后传递给所述主机,所述主机编码发送到对端主机。处理过程具体是:一个手机对应一路数据,所述音频处理终端需要分别对每个android手机对应的一路数据做消噪处理和回声处理,剔除无用信号,之后,对每一路数据做能量分析,然后基于分析结果,选取连续500ms内能量最高的一路语音数据传递给所述主机。

结合图1至图3所示,举一实例进行说明:

如图1所示,两台主机之间经过网络做通话,两台主机分别连接了五台android手机作为它们的麦克风阵列,且五台android手机较均匀地分布在会话人员周围。

android手机安装一个特定apk后连接到局域网vlanb中,该特定apk发广播报文到局域网内,告知本机麦克风可以加入到麦克风阵列。

如图2所示,音频处理终端同样连接到vlanb,在vlanb内查找可以加入到麦克风阵列的android设备;然后,用户操作主机的音频输入源,手动连接需要加入的android手机,之后,将连接好的android手机均匀分布到会话人员周围,比如会话人员桌面上。当设备放置好之后,音频处理终端控制被连接的android手机上的特定apk打开本地麦克风,android手机将采集到音频流发送给音频处理终端,最后,音频处理终端校验一下所有的麦克风是否正常,即可进入正常的使用流程。

如图3所示,音频处理终端获取来自各android手机的音频数据,对每个android手机对应的一路数据做消噪处理和回声处理,剔除无用信号,之后,对处理过的每一路数据做能量分析,基于分析结果,选取它们中连续500ms内能量最高的一路语音数据,传递给主机;最后主机编码发送到对端,从而实现了完整的语音通话。

虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。

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