麦克风设备扩展方法、装置及麦克风设备同步方法、装置与流程

文档序号:21781072发布日期:2020-08-07 20:05阅读:206来源:国知局
麦克风设备扩展方法、装置及麦克风设备同步方法、装置与流程

本发明涉及的是麦克风设备扩展和扩展之后的数据同步技术领域,尤其涉及一种在终端上的麦克风设备扩展方法、装置及麦克风设备同步方法、装置。



背景技术:

之前的扩展mic(麦克风设备),比如罗技的方案polycom的方案,需要将扩展mic接在自己原有的mic设备上,这样原有的mic设备上就需要有多个接口用于支持扩展mic,这在结构上和电路上都带来了很大的难度;将扩展mic插入主的mic上,然后由主mic将数据处理后,在作为一个设备将数据发给上位机,主mic进行算法处理。

现有这个方法所存在的技术问题至少包括:主mic要进行算法处理,所以主mic的性能要较强,所以成本较高;主mic需要有外置接口接入子mic,结构和电路都较难实现;在mic通路主mic二次数据处理,根据cpu性能会带来不等的延迟;并且在mic扩展之后,还需要解决如何实现扩展后的mic的数据同步的技术问题。



技术实现要素:

本发明的目的在于克服现有技术的不足,本发明提供了一种在终端上的麦克风设备扩展方法、装置及麦克风设备同步方法、装置,可以使用较低配置的终端即可完成麦克风设备的扩展且不需要集成算法,数据处理部分均在终端部分,可实现低延时;并且在扩展之后,实现扩展之后的麦克风设备的数据同步,减少噪声影响。

为了解决上述中至少一个技术问题,本发明实施例提供了一种在终端上的麦克风设备扩展方法,所述方法包括:

检测到至少一个子麦克风设备与终端连接时,加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新;

所述至少一个子麦克风设备将采集到的音频数据发送至自动适配驱动更新后的麦克风设备驱动;以及,

自动适配驱动更新后的麦克风设备驱动向所述终端输出所述子麦克风设备的数据。

可选的,所述检测到至少一个子麦克风设备与终端连接之后,还包括:

在所述终端上加载所述至少一个子麦克风设备中的每个子麦克风设备所对应的驱动。

可选的,所述至少一个子麦克风设备所对应的驱动在所述终端上操作系统内暴露的驱动类型为非标准的麦克风设备驱动。

可选的,所述加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新,包括:

加载在所述终端的主麦克风设备根据其所对应的驱动模拟出一个麦克风设备的驱动;

所述麦克风设备的驱动基于所述至少一个子麦克风设备进行自动适配驱动更新。

可选的,所述麦克风设备的驱动基于所述至少一个子麦克风设备进行自动适配驱动更新,包括:

基于所述至少一个子麦克风设备中的每个子麦克风设备对应的驱动获得每个子麦克风设备所包含的采集音频路数;

所述麦克风设备的驱动根据所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数进行自动适配驱动更新。

可选的,所述麦克风设备的驱动根据所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数进行自动适配驱动更新,包括:

所述麦克风设备的驱动在原有的采集音频路数的基础上增加所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数;

所述麦克风设备的驱动根据增加所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数之后进行自动适配驱动更新。

可选的,其特征在于,所述每个子麦克风设备所包含的采集音频路数为一路或者两路。

另外,本发明实施例还提供了一种在终端上的麦克风设备同步方法,所述方法包括:

在主麦克风设备和至少一个子麦克风设备中分别增加一个缓冲区;

所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中;

终端上的运行系统基于预设时钟周期内分别在所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区内提取相同数量的音频数据;以及,

所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率。

可选的,所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中,包括:

所述主麦克风设备和所述至少一个子麦克风设备根据各自内置芯片晶振频率分别进行音频数据的采集;

将分别采集到的各自音频数据按照时间顺序缓存至各自的缓冲区内。

可选的,所述主麦克风设备和所述至少一个子麦克风设备各自的缓冲区中存储的各自音频数据的数据量为预设特定值;

所述预设特定值的数量至少为所述终端上的运行系统在预设时间周期内提取的音频数据量的两倍。

可选的,所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率,包括:

利用所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区所缓存的音频数据数量与预设特定值进行比较;

根据比较结果调节对应麦克风设备采集音频数据的速率。

可选的,所述根据比较结果调节对应麦克风设备采集音频数据的速率,包括:

当所述比较结果为所缓存的音频数据数量小于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率加快;

当所述比较结果为所缓存的音频数据数量大于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率减慢;

当所述比较结果为所缓存的音频数据数量等于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率维持。

另外,本发明实施例还提供了一种在终端上的麦克风设备扩展装置,所述装置包括:

模拟更新模块:用于检测到至少一个子麦克风设备与终端连接时,加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新;

数据发送模块:用于所述至少一个子麦克风设备将采集到的音频数据发送至自动适配驱动更新后的麦克风设备驱动;以及,

数据输出模块:用于自动适配驱动更新后的麦克风设备驱动向所述终端输出所述子麦克风设备的数据。

另外,本发明实施例还提供了一种在终端上的麦克风设备同步装置,所述装置包括:

缓冲器增加模块:用于在主麦克风设备和至少一个子麦克风设备中分别增加一个缓冲区;

数据缓存模块:用于所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中;

数据提取模块:用于终端上的运行系统基于预设时钟周期内分别在所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区内提取相同数量的音频数据;以及,

数据采集调节模块:用于所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率。

在本发明实施例中,通过检测到至少一个子麦克风设备与终端连接时,加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新;所述至少一个子麦克风设备将采集到的音频数据发送至自动适配驱动更新后的麦克风设备驱动;以及,自动适配驱动更新后的麦克风设备驱动向所述终端输出所述子麦克风设备的数据;实现可以使用较低配置的终端即可完成麦克风设备的扩展且不需要集成算法,数据处理部分均在终端部分,可实现低延时。

通过在主麦克风设备和至少一个子麦克风设备中分别增加一个缓冲区;所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中;终端上的运行系统基于预设时钟周期内分别在所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区内提取相同数量的音频数据;以及,所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率;实现在扩展之后,实现扩展之后的麦克风设备的数据同步,减少噪声影响。

附图说明

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

图1是本发明实施例中的在终端上的麦克风设备扩展方法的流程示意图;

图2是本发明实施例中的在终端上的麦克风设备同步方法的流程示意图;

图3是本方实施例中的合并在终端上的麦克风设备扩展方法和麦克风设备同步方法的流程示意图;

图4是本发明实施例中的在终端上的麦克风设备扩展装置的结构组成示意图;

图5是本发明实施例中的在终端上的麦克风设备同步装置的结构组成示意图。

具体实施方式

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

实施例

请参阅图1,图1是本发明实施例中的在终端上的麦克风设备扩展方法的流程示意图。

如图1所示,一种在终端上的麦克风设备扩展方法,所述方法包括:

s11:检测到至少一个子麦克风设备与终端连接时,加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新;

在本方面具体实施过程中,所述检测到至少一个子麦克风设备与终端连接之后,还包括:在所述终端上加载所述至少一个子麦克风设备中的每个子麦克风设备所对应的驱动。

进一步的,所述至少一个子麦克风设备所对应的驱动在所述终端上操作系统内暴露的驱动类型为非标准的麦克风设备驱动。

进一步的,所述加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新,包括:加载在所述终端的主麦克风设备根据其所对应的驱动模拟出一个麦克风设备的驱动;所述麦克风设备的驱动基于所述至少一个子麦克风设备进行自动适配驱动更新。

进一步的,所述麦克风设备的驱动基于所述至少一个子麦克风设备进行自动适配驱动更新,包括:基于所述至少一个子麦克风设备中的每个子麦克风设备对应的驱动获得每个子麦克风设备所包含的采集音频路数;所述麦克风设备的驱动根据所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数进行自动适配驱动更新。

进一步的,所述麦克风设备的驱动根据所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数进行自动适配驱动更新,包括:所述麦克风设备的驱动在原有的采集音频路数的基础上增加所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数;所述麦克风设备的驱动根据增加所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数之后进行自动适配驱动更新。

进一步的,所述每个子麦克风设备所包含的采集音频路数为一路或者两路。

具体的,终端上运行的操作系统通过检测接入端口的电平信号的变化,来检测是否有子麦克风设备与终端连接,一般在检测到有子麦克风设备连接的时候,并获得连接的子麦克风设备的数量,至少为一个;并且在具体实施过程中,一般情况下子麦克风设备通过usb接口与终端连接,并不排除后续可以利用其它的接口来与终端连接,具体取决于子麦克风设备的输出端口的类型。

在子麦克风设备连接在终端之后,该终端开始加载该子麦克风设备所对应的驱动,并且所加载的驱动,在该终端上的操作系统内暴露的驱动类型为非标准的麦克风设备的驱动。

并且,在插入子麦克风设备之前或者说要插入的子麦克风设备能工作,在该终端上一定需要先存在一个主麦克风设备,并且该主麦克风设备的对应驱动也加载在该终端上,并且其在该终端的操作系统上所暴露的驱动类型为麦克风驱动;在终端检测到有子麦克风设备插入时,并且在加载子麦克风设备对应的驱动之后,主麦克风设备对应的驱动就根据该子麦克风设备所对应的驱动来进行自动适配驱动更新。

具体的自动适配驱动更新过程为在该终端的主麦克风设备首先根据其所对应的驱动模拟出一个麦克风设备的驱动然后利用该麦克风设备的驱动根据子麦克风设备来进行自动适配驱动更新;比如,根据该连接在该终端的中所有子麦克风设备中的每一个子麦克风设备对应的驱动来得到每一个子麦克风设备中所包含的采集音频数据的路数,然后麦克风设备的驱动就根据该终端的中所有子麦克风设备中的每一个子麦克风设备中所包含的采集音频数据的路数来进行自动适配驱动更新;又比如,该麦克风设备的驱动在原有的采集音频数据的路数的基础上增加该终端的中所有子麦克风设备中的每一个子麦克风设备中所包含的采集音频数据的路数,然后该麦克风设备的驱动根据增加该终端的中所有子麦克风设备中的每一个子麦克风设备中所包含的采集音频数据的路数之后进行自动适配驱动更新。

一般情况下,每个子麦克风设备所包含的采集音频数据的路数为一路或者两路;并且子麦克风设备接入终端的数量是有上线的,具体是根据主麦克风的物理条件的限制但不是与终端的接口有关。

通过上述的方式可以快速的实现对主麦克风设备的扩展。

s12:所述至少一个子麦克风设备将采集到的音频数据发送至自动适配驱动更新后的麦克风设备驱动;

在本发明具体实施过程中,在采集音频数据的时候,连接在终端上的子麦克风设备将采集到的音频数据发送至该自动适配驱动更新后的麦克风设备驱动上。

s13:自动适配驱动更新后的麦克风设备驱动向所述终端输出所述子麦克风设备的数据。

在本发明具体实施过程中,在自动适配驱动更新后的麦克风设备接到相应的音频数据之后,将该音频数据向终端输出,或者说,终端根据一定的时钟周期向自动适配驱动更新后的麦克风设备提取数据,这些数据包括了子麦克风设备的所采集的音频数据和主麦克风设备所采集的音频数据。

在本发明实施例中,通过检测到至少一个子麦克风设备与终端连接时,加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新;所述至少一个子麦克风设备将采集到的音频数据发送至自动适配驱动更新后的麦克风设备驱动;以及,自动适配驱动更新后的麦克风设备驱动向所述终端输出所述子麦克风设备的数据;实现可以使用较低配置的终端即可完成麦克风设备的扩展且不需要集成算法,数据处理部分均在终端部分,可实现低延时。

实施例

请参阅图2,图2是本发明实施例中的在终端上的麦克风设备同步方法的流程示意图。

如图2所示,一种在终端上的麦克风设备同步方法,所述方法包括:

s21:在主麦克风设备和至少一个子麦克风设备中分别增加一个缓冲区;

在本发明具体实施过程中,分别在主麦克风设备和子麦克风设备中分别增加一个缓冲区,该缓冲区主要用于缓存对应的所采集的音频数据。

因为主麦克风设备和子麦克风设备中的控制采集音频数据的晶振均会存在公差问题,在采集数据足够长的时间之后,就会出现采集数据的不对齐问题,导致输出的数据在终端上可能存在噪声。

s22:所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中;

在本发明具体实施过程中,所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中,包括:所述主麦克风设备和所述至少一个子麦克风设备根据各自内置芯片晶振频率分别进行音频数据的采集;将分别采集到的各自音频数据按照时间顺序缓存至各自的缓冲区内。

具体的,主麦克风设备和子麦克风设备均是根据各自内置芯片晶振频率来分别进行音频数据的采集,然后将采集到的音频数据根据所采集的麦克风设备按照采集的时间顺序缓存至各自的缓冲区内。

s23:终端上的运行系统基于预设时钟周期内分别在所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区内提取相同数量的音频数据;

在本发明具体实施过程中,终端上的运行系统(运行的操作系统)会根据预设时间周期分别在主麦克风设备和子麦克风设备中各自的缓冲区内同时提取相同数量的音频数据;这样保障每次提取的数据量都是相同的,并且时间顺序也是相同的,保障数据的误差较小,在终端上形成的噪声降低至可控的范围内。

s24:所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率。

在本发明具体实施过程中,所述主麦克风设备和所述至少一个子麦克风设备各自的缓冲区中存储的各自音频数据的数据量为预设特定值;所述预设特定值的数量至少为所述终端上的运行系统在预设时间周期内提取的音频数据量的两倍。

进一步的,所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率,包括:利用所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区所缓存的音频数据数量与预设特定值进行比较;根据比较结果调节对应麦克风设备采集音频数据的速率。

进一步的,所述根据比较结果调节对应麦克风设备采集音频数据的速率,包括:当所述比较结果为所缓存的音频数据数量小于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率加快;当所述比较结果为所缓存的音频数据数量大于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率减慢;当所述比较结果为所缓存的音频数据数量等于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率维持。

具体的,在主麦克风设备和子麦克风设备的各自缓冲区中存储的各自音频数据的数据量为一个预设特定值,并且是相同的数据的预设特定值;该预设特定值的数量一般为终端上的运行系统在预设时间周期内提取的音频数据量的两倍。

利用主麦克风设备和子麦克风设备中各自缓冲区所缓存的音频数据量和预设特定值进行比较;然后根据比较结果来调节对应麦克风设备采集音频数据的速度。

具体为当比较结果为所缓存的音频数据数量小于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率加快;当比较结果为所缓存的音频数据数量大于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率减慢;当比较结果为所缓存的音频数据数量等于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率维持。

在本发实施例中,通过在主麦克风设备和至少一个子麦克风设备中分别增加一个缓冲区;所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中;终端上的运行系统基于预设时钟周期内分别在所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区内提取相同数量的音频数据;以及,所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率;实现在扩展之后,实现扩展之后的麦克风设备的数据同步,减少噪声影响。

实施例

请参阅图3,图3是本方实施例中的合并在终端上的麦克风设备扩展方法和麦克风设备同步方法的流程示意图

如图3所示,一种在终端上的数据处理方法,其包括麦克风设备扩展方法和麦克风设备同步方法,具体如下:

s31:检测到至少一个子麦克风设备与终端连接时,加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新;

s32:所述至少一个子麦克风设备将采集到的音频数据发送至自动适配驱动更新后的麦克风设备驱动;

s33:在主麦克风设备和至少一个子麦克风设备中分别增加一个缓冲区;

s34:所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中;

s35:终端上的运行系统基于预设时钟周期内分别在所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区内提取相同数量的音频数据;

s36:所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率。

在本发明具体实施过程中,s31-s36的具体实施过程可参详上述实施例,在此不再赘述。

通过上述实施例,可以使用较低配置的终端即可完成麦克风设备的扩展且不需要集成算法,数据处理部分均在终端部分,可实现低延时;并且在扩展之后,实现扩展之后的麦克风设备的数据同步,减少噪声影响。

实施例

请参阅图4,图4是本发明实施例中的在终端上的麦克风设备扩展装置的结构组成示意图。

如图4所示,一种在终端上的麦克风设备扩展装置,所述装置包括:

模拟更新模块41:用于检测到至少一个子麦克风设备与终端连接时,加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新;

在本方面具体实施过程中,所述检测到至少一个子麦克风设备与终端连接之后,还包括:在所述终端上加载所述至少一个子麦克风设备中的每个子麦克风设备所对应的驱动。

进一步的,所述至少一个子麦克风设备所对应的驱动在所述终端上操作系统内暴露的驱动类型为非标准的麦克风设备驱动。

进一步的,所述加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新,包括:加载在所述终端的主麦克风设备根据其所对应的驱动模拟出一个麦克风设备的驱动;所述麦克风设备的驱动基于所述至少一个子麦克风设备进行自动适配驱动更新。

进一步的,所述麦克风设备的驱动基于所述至少一个子麦克风设备进行自动适配驱动更新,包括:基于所述至少一个子麦克风设备中的每个子麦克风设备对应的驱动获得每个子麦克风设备所包含的采集音频路数;所述麦克风设备的驱动根据所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数进行自动适配驱动更新。

进一步的,所述麦克风设备的驱动根据所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数进行自动适配驱动更新,包括:所述麦克风设备的驱动在原有的采集音频路数的基础上增加所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数;所述麦克风设备的驱动根据增加所述至少一个子麦克风设备中的每个子麦克风设备所包含的采集音频路数之后进行自动适配驱动更新。

进一步的,所述每个子麦克风设备所包含的采集音频路数为一路或者两路。

具体的,终端上运行的操作系统通过检测接入端口的电平信号的变化,来检测是否有子麦克风设备与终端连接,一般在检测到有子麦克风设备连接的时候,并获得连接的子麦克风设备的数量,至少为一个;并且在具体实施过程中,一般情况下子麦克风设备通过usb接口与终端连接,并不排除后续可以利用其它的接口来与终端连接,具体取决于子麦克风设备的输出端口的类型。

在子麦克风设备连接在终端之后,该终端开始加载该子麦克风设备所对应的驱动,并且所加载的驱动,在该终端上的操作系统内暴露的驱动类型为非标准的麦克风设备的驱动。

并且,在插入子麦克风设备之前或者说要插入的子麦克风设备能工作,在该终端上一定需要先存在一个主麦克风设备,并且该主麦克风设备的对应驱动也加载在该终端上,并且其在该终端的操作系统上所暴露的驱动类型为麦克风驱动;在终端检测到有子麦克风设备插入时,并且在加载子麦克风设备对应的驱动之后,主麦克风设备对应的驱动就根据该子麦克风设备所对应的驱动来进行自动适配驱动更新。

具体的自动适配驱动更新过程为在该终端的主麦克风设备首先根据其所对应的驱动模拟出一个麦克风设备的驱动然后利用该麦克风设备的驱动根据子麦克风设备来进行自动适配驱动更新;比如,根据该连接在该终端的中所有子麦克风设备中的每一个子麦克风设备对应的驱动来得到每一个子麦克风设备中所包含的采集音频数据的路数,然后麦克风设备的驱动就根据该终端的中所有子麦克风设备中的每一个子麦克风设备中所包含的采集音频数据的路数来进行自动适配驱动更新;又比如,该麦克风设备的驱动在原有的采集音频数据的路数的基础上增加该终端的中所有子麦克风设备中的每一个子麦克风设备中所包含的采集音频数据的路数,然后该麦克风设备的驱动根据增加该终端的中所有子麦克风设备中的每一个子麦克风设备中所包含的采集音频数据的路数之后进行自动适配驱动更新。

一般情况下,每个子麦克风设备所包含的采集音频数据的路数为一路或者两路;并且子麦克风设备接入终端的数量是有上线的,具体是根据主麦克风的物理条件的限制但不是与终端的接口有关。

通过上述的方式可以快速的实现对主麦克风设备的扩展。

数据发送模块42:用于所述至少一个子麦克风设备将采集到的音频数据发送至自动适配驱动更新后的麦克风设备驱动;

在本发明具体实施过程中,在采集音频数据的时候,连接在终端上的子麦克风设备将采集到的音频数据发送至该自动适配驱动更新后的麦克风设备驱动上。

数据输出模块43:用于自动适配驱动更新后的麦克风设备驱动向所述终端输出所述子麦克风设备的数据。

在本发明具体实施过程中,在自动适配驱动更新后的麦克风设备接到相应的音频数据之后,将该音频数据向终端输出,或者说,终端根据一定的时钟周期向自动适配驱动更新后的麦克风设备提取数据,这些数据包括了子麦克风设备的所采集的音频数据和主麦克风设备所采集的音频数据。

在本发明实施例中,通过检测到至少一个子麦克风设备与终端连接时,加载在所述终端的主麦克风设备驱动基于所述至少一个子麦克风设备进行自动适配驱动更新;所述至少一个子麦克风设备将采集到的音频数据发送至自动适配驱动更新后的麦克风设备驱动;以及,自动适配驱动更新的麦克风设备驱动向所述终端输出所述子麦克风设备的数据;实现可以使用较低配置的终端即可完成麦克风设备的扩展且不需要集成算法,数据处理部分均在终端部分,可实现低延时。

实施例

请参阅图5,图5是本发明实施例中的在终端上的麦克风设备同步装置的结构组成示意图。

如图5所示,一种在终端上的麦克风设备同步装置,所述装置包括:

缓冲器增加模块51:用于在主麦克风设备和至少一个子麦克风设备中分别增加一个缓冲区;

在本发明具体实施过程中,分别在主麦克风设备和子麦克风设备中分别增加一个缓冲区,该缓冲区主要用于缓存对应的所采集的音频数据。

因为主麦克风设备和子麦克风设备中的控制采集音频数据的晶振均会存在公差问题,在采集数据足够长的时间之后,就会出现采集数据的不对齐问题,导致输出的数据在终端上可能存在噪声。

数据缓存模块52:用于所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中;

在本发明具体实施过程中,所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中,包括:所述主麦克风设备和所述至少一个子麦克风设备根据各自内置芯片晶振频率分别进行音频数据的采集;将分别采集到的各自音频数据按照时间顺序缓存至各自的缓冲区内。

具体的,主麦克风设备和子麦克风设备均是根据各自内置芯片晶振频率来分别进行音频数据的采集,然后将采集到的音频数据根据所采集的麦克风设备按照采集的时间顺序缓存至各自的缓冲区内。

数据提取模块53:用于终端上的运行系统基于预设时钟周期内分别在所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区内提取相同数量的音频数据;

在本发明具体实施过程中,终端上的运行系统(运行的操作系统)会根据预设时间周期分别在主麦克风设备和子麦克风设备中各自的缓冲区内同时提取相同数量的音频数据;这样保障每次提取的数据量都是相同的,并且时间顺序也是相同的,保障数据的误差较小,在终端上形成的噪声降低至可控的范围内。

数据采集调节模块54:用于所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率。

在本发明具体实施过程中,所述主麦克风设备和所述至少一个子麦克风设备各自的缓冲区中存储的各自音频数据的数据量为预设特定值;所述预设特定值的数量至少为所述终端上的运行系统在预设时间周期内提取的音频数据量的两倍。

进一步的,所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率,包括:利用所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区所缓存的音频数据数量与预设特定值进行比较;根据比较结果调节对应麦克风设备采集音频数据的速率。

进一步的,所述根据比较结果调节对应麦克风设备采集音频数据的速率,包括:当所述比较结果为所缓存的音频数据数量小于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率加快;当所述比较结果为所缓存的音频数据数量大于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率减慢;当所述比较结果为所缓存的音频数据数量等于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率维持。

具体的,在主麦克风设备和子麦克风设备的各自缓冲区中存储的各自音频数据的数据量为一个预设特定值,并且是相同的数据的预设特定值;该预设特定值的数量一般为终端上的运行系统在预设时间周期内提取的音频数据量的两倍。

利用主麦克风设备和子麦克风设备中各自缓冲区所缓存的音频数据量和预设特定值进行比较;然后根据比较结果来调节对应麦克风设备采集音频数据的速度。

具体为当比较结果为所缓存的音频数据数量小于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率加快;当比较结果为所缓存的音频数据数量大于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率减慢;当比较结果为所缓存的音频数据数量等于预设特定值时,则需要调节对应麦克风设备采集音频数据的速率维持。

在本发实施例中,通过在主麦克风设备和至少一个子麦克风设备中分别增加一个缓冲区;所述主麦克风设备和所述至少一个子麦克风设备分别将采集到的音频数据缓存至各自的缓冲区中;终端上的运行系统基于预设时钟周期内分别在所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区内提取相同数量的音频数据;以及,所述主麦克风设备和所述至少一个子麦克风设备中各自的缓冲区根据所缓存的音频数据数量调节对应麦克风设备采集音频数据的速率;实现在扩展之后,实现扩展之后的麦克风设备的数据同步,减少噪声影响。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取存储器(ram,randomaccessmemory)、磁盘或光盘等。

另外,以上对本发明实施例所提供的一种在终端上的麦克风设备扩展方法、装置及麦克风设备同步方法、装置进行了详细介绍,本文中应采用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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