一种音频数据采集方法及设备与流程

文档序号:15444527发布日期:2018-09-14 23:12阅读:304来源:国知局

本发明涉及音频处理技术领域,特别涉及一种音频数据采集方法及设备。



背景技术:

目前,很多设备支持语音输入,因此设备中一般都设置了音频输入系统。为了减小系统的功耗,音频输入系统在进入正常工作或进行语音识别之前都是处于休眠状态的,需通过语音进行唤醒。例如,若输入的语音的能量满足了为音频输入系统设置的触发器的触发门限,则该触发器被触发,打开先入先出(firstinputfirstoutput,fifo)存储器的数据通路,采集输入的音频数据,以及唤醒中央处理器(cpu),相当于触发了音频输入系统。

也就是说,音频输入系统是否能够被触发,取决于该触发器的触发门限。目前一般将该触发器的触发门限设置的较高,那么,在该触发器被触发之前,即使向该音频输入系统输入再多的音频数据,由于该音频输入系统未被触发,都是无法采集的。

可见,目前的方案会导致漏采集音频数据,致使采集的数据不够完整。



技术实现要素:

本发明实施例提供一种音频数据采集方法及设备,用于减少漏采集的音频数据,提高数据的完整性。

第一方面,提供一种音频数据采集方法,包括:

在通过第一触发器和第二触发器检测音频信号的过程中,确定通过第一触发器检测的音频信号的能量大于或等于所述第一触发器的触发门限,则确定所述第一触发器被触发;所述第一触发器的触发门限小于第一预设阈值;

使能存储器的数据通道,以通过所述存储器采集输入到所述音频输入系统的音频数据。

可选的,所述方法还包括:

在所述第一触发器被触发后的第一预设时长内,确定通过所述第二触发器检测的音频信号的能量大于或等于所述第二触发器的触发门限,则确定所述第二触发器被触发;所述第二触发器的触发门限大于第二预设阈值;

检测所述存储器存储的数据量是否达到所述存储器所能存储的最大数据量;

若确定所述存储器存储的数据量已达到所述存储器所能存储的所述最大数据量,则唤醒处理器;

通过所述处理器读取所述存储器中存储的音频数据。

可选的,在通过所述处理器读取所述存储器中存储的音频数据之后,还包括:

通过所述处理器确定读取的音频数据不足以进行语音识别;

指示所述处理器进入休眠状态;或

通过所述处理器确定读取的音频数据足以进行语音识别;

通过所述处理器根据读取的音频数据进行语音识别。

可选的,

在所述第一触发器被触发后的第二预设时长内,若所述第二触发器没有被触发,则确定所述处理器是否处于休眠状态;

若所述处理器处于所述休眠状态,则唤醒所述处理器;

通过所述处理器重新设置所述第一触发器和/或所述第二触发器的触发门限。

可选的,在通过所述处理器重新设置所述第一触发器和/或所述第二触发器的触发门限之前,还包括:

若需重新设置所述第一触发器的触发门限,则确定所述第一触发器的触发门限大于或等于所述第一触发器的最小合法触发门限;或

若需重新设置所述第二触发器的触发门限,则确定所述第二触发器的触发门限大于或等于所述第二触发器的最小合法触发门限。

可选的,所述方法还包括:

在所述第一触发器被触发后的第一预设时长内,确定通过所述第二触发器检测的音频信号的能量均小于所述第二触发器的触发门限,则确定所述第二触发器未被触发;所述第二触发器的触发门限大于第二预设阈值;

关闭所述存储器的所述数据通道。

可选的,所述方法还包括:

通过所述处理器确定所述第二触发器的触发频率高于预设触发频率;

通过所述处理器重新设置所述第二触发器的触发门限。

第二方面,提供一种音频数据采集设备,包括:

数据运算模块,用于在通过第一触发器和第二触发器检测音频信号的过程中,确定通过第一触发器检测的音频信号的能量大于或等于所述第一触发器的触发门限,则确定所述第一触发器被触发;所述第一触发器的触发门限小于第一预设阈值;

数据通路控制模块,用于使能存储器的数据通道,以通过所述存储器采集输入到所述音频输入系统的音频数据。

可选的,所述设备还包括检测模块、唤醒模块和操作模块;

所述数据运算模块还用于:在所述第一触发器被触发后的第一预设时长内,确定通过所述第二触发器检测的音频信号的能量大于或等于所述第二触发器的触发门限,则确定所述第二触发器被触发;所述第二触发器的触发门限大于第二预设阈值;

所述检测模块用于:检测所述存储器存储的数据量是否达到所述存储器所能存储的最大数据量;

所述唤醒模块用于:若确定所述存储器存储的数据量已达到所述存储器所能存储的所述最大数据量,则唤醒处理器;

所述操作模块用于:通过所述处理器读取所述存储器中存储的音频数据。

可选的,所述设备还包括系统休眠控制模块及识别模块;

所述操作模块还用于:通过所述处理器确定读取的音频数据不足以进行语音识别;

所述系统休眠控制模块用于:指示所述处理器进入休眠状态;或

所述操作模块还用于:通过所述处理器确定读取的音频数据足以进行语音识别;

所述识别模块用于:通过所述处理器根据读取的音频数据进行语音识别。

可选的,所述设备还包括设置模块;

所述数据运算模块还用于:在所述第一触发器被触发后的第二预设时长内,若所述第二触发器没有被再次触发,则确定所述处理器是否处于休眠状态;

所述唤醒模块还用于:若所述处理器处于所述休眠状态,则唤醒所述处理器;

所述设置模块用于:通过所述处理器重新设置所述第一触发器和/或所述第二触发器的触发门限。

可选的,所述数据运算模块还用于:

在所述设置模块通过所述处理器重新设置所述第一触发器和/或所述第二触发器的触发门限之前,若需重新设置所述第一触发器的触发门限,则确定所述第一触发器的触发门限大于或等于所述第一触发器的最小合法触发门限;或

在所述设置模块通过所述处理器重新设置所述第一触发器和/或所述第二触发器的触发门限之前,若需重新设置所述第二触发器的触发门限,则确定所述第二触发器的触发门限大于或等于所述第二触发器的最小合法触发门限。

可选的,

所述数据运算模块还用于:在所述第一触发器被触发后的第一预设时长内,确定通过所述第二触发器检测的音频信号的能量均小于所述第二触发器的触发门限,则确定所述第二触发器未被触发;所述第二触发器的触发门限大于第二预设阈值;

所述数据通路控制模块还用于:关闭所述存储器的所述数据通道。

可选的,所述设备还包括设置模块;

所述数据运算模块还用于:通过所述处理器确定所述第二触发器的触发频率高于预设触发频率;

所述设置模块用于:通过所述处理器重新设置所述第二触发器的触发门限。

本发明实施例中,第一触发器的触发门限较低,因此第一触发器较容易被触发,在第一触发器被触发后,即可使能存储器的数据通道来采集音频数据,通过这种方式,可以减少漏采集的数据,也就是能够采集更多的音频数据,使得采集的音频数据更为完整,也使得后续的语音识别结果更为准确。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本发明实施例提供的音频数据采集方法的流程图;

图2为本发明实施例提供的音频数据采集设备的一种结构示意图;

图3为本发明实施例提供的音频数据采集设备的一种结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。

以下以具体实施例进行介绍:

如图1所示,本发明一实施例提供一种音频数据采集方法,该方法的流程描述如下:

步骤101:在通过第一触发器和第二触发器检测音频信号的过程中,确定通过第一触发器检测的音频信号的能量大于或等于第一触发器的触发门限,则确定第一触发器被触发;第一触发器的触发门限小于第一预设阈值;

步骤102:使能存储器的数据通道,以通过存储器采集输入到音频输入系统的音频数据。

一般来说,触发器的触发门限为电平值,而电平值与声音的能量有关,可以理解为,音频信号的能量越大,则对应的电平值越高。

在设备开机后,各模块寄存器配置完成后,系统(即音频系统,下文中简称为系统)进入休眠状态,等待语音唤醒。此时,仅有第一触发器、第二触发器和音频输入通路等部分未进入休眠状态,以检测音频信号。为减小功耗,设备的其他部件都可以处于关闭状态。

本发明实施例提供第一触发器和第二触发器,第一触发器的触发门限可以设置的比较低,即第一触发器的触发电平值比较低,例如小于第一预设阈值,输入的音频信号无需过大的能量就可以触发第一触发器,可见,第一触发器是比较容易被触发的。在音频信号发生变化时,若音频信号的能量对应的电平值大于或等于第一触发器的触发门限,则第一触发器被触发,即可使能存储器的数据通道,这里的存储器可以是fifo,当然也可能是其他的存储器,下文中以fifo为例。则fifo就可以通过数据通道采集输入的音频数据。相较于现有技术中将触发器的触发门限设置较高的情况来说,本发明实施例中第一触发器的门限较低,采集的音频数据更多,更为完整,尽量避免漏采集有用的音频数据,使得通过音频数据识别的语音信息更加完整准确。

可以看到,在第一触发器被触发后,只是使能了fifo的数据通道,而并未使能处理器,即,在采集音频数据的同时依然可以减小功耗。其中,处理器可以包括cpu或特定应用集成电路(applicationspecificintegratedcircuit,asic),可以包括一个或多个用于控制程序执行的集成电路,可以包括使用现场可编程门阵列(fieldprogrammablegatearray,fpga)开发的硬件电路,可以包括基带芯片。下文中以cpu为例。

因本发明实施例还提供了第二触发器,则第二触发器的触发门限可以设置的比较高,即第二触发器的触发电平值可以较高,例如大于第二预设阈值,第二触发器的触发门限大于第一触发器的触发门限。第一预设阈值可以小于或等于第二预设阈值。

在第一触发器被触发后,除了可以使能fifo之外,还可以使能第一计时器,使得第一计时器开始计时,第一计时器计时的最大时长为第一预设时长。

在第一触发器被触发后,至第一计时器计到最大值之前,即,在第一触发器被触发后的第一预设时长内,若第二触发器检测的音频信号的能量大于或等于第二触发器的触发门限,则第二触发器也被触发。第二触发器被触发后,就可以通过第二触发器来开启fifo的检测器,通过fifo的检测器持续检测fifo中存储的数据量。如果确定fifo中存储的数据量达到fifo所能存储的最大数据量,则通过fifo的检测器可以产生cpu唤醒中断,唤醒cpu来读取fifo中存储的音频数据。

即,cpu是在第二触发器被触发后被唤醒的,第二触发器的触发门限较高,一般不易被误触发,减小误触发的几率。例如第二触发器的触发门限根据用户正式进行语音输入,即用户的嘴比较靠近音频采集端的音量来设计,那么,如果第二触发器被触发,一般就表明用户确实在进行语音输入,此时唤醒cpu可以及时处理音频数据。

而在第一触发器被触发后,至第一计时器计到最大值之前,即,在第一触发器被触发后的第一预设时长内,若第二触发器检测的音频信号的能量始终小于第二触发器的触发门限,则确定第二触发器未被触发,则可以关闭fifo的数据通道,并清空fifo中存储的数据。如果第二触发器未被触发,可能表明用户没有进行语音输入,则无需唤醒cpu,且关闭fifo的数据通道,以节省功耗。清空fifo,是为了进行下一次的音频数据采集,避免音频数据混淆。

在第二触发器被触发后,若通过fifo的检测器唤醒cpu来读取fifo中存储的音频数据,则cpu一次可以读取fifo中存储的全部音频数据。在cpu进行一次fifo数据读取后,如果确定数据量不足,即,因为进行语音识别需要的音频数据较多,fifo的最大存储量不一定能满足进行语音识别的数据量的需求,则cpu一次读取后可能确定读取的音频数据不足以进行语音识别,那么cpu可以继续进入休眠状态,等待fifo的检测器进行下一次唤醒。通过这种方式,可以进一步减少cpu的空闲等待时间,降低功耗。在cpu进入休眠状态后,fifo的检测器依然会持续检测fifo中存储的音频数据,若确定fifo中存储的音频数据达到fifo所能存储的最大数据量,则fifo的检测器会再次产生cpu唤醒中断来唤醒cpu,以读取fifo中的音频数据。依次循环,直至进行语音识别所需的音频数据读取完成,则cpu进入语音识别状态。如果语音识别成功,则系统被成功唤醒,进入正常工作模式。而如果语音识别失败,则系统将返回步骤101,即继续通过第一触发器和第二触发器来检测音频数据。可循环执行,直至语音被成功识别。

另外,在初始时,第一触发器的触发门限和第二触发器的触发门限可能是系统默认设置的,或者可能是在之前的执行过程中设置的。在进行音频数据采集的过程中,因为在不同的时间进行音频数据采集的环境可能不同,有时的环境较为安静,有时的环境较为嘈杂,如果触发器的触发门限始终不变,可能无法满足不同环境的需求。因此,在本发明实施例中,还可以根据环境因素来调整第一触发器的触发门限和/或第二触发器的触发门限,下面进行介绍。

第一触发器被触发后,可以使能fifo的数据通道以及第一计时器,另外,第一触发器被触发后,还可以使能第二计时器,使得第二计时器开始计时,第二计时器计时的最大时长为第二预设时长。第一预设时长和第二预设时长的大小关系不作限制。例如,第二预设时长大于第一预设时长。

那么,在第一触发器被触发后,至第二计时器计到最大值之前,如果第二触发器始终没有被触发,则确定cpu是否处于休眠状态,如果cpu处于休眠状态,则通过第二计时器可产生中断信号,以唤醒cpu,通过cpu来重新配置第一触发器的触发门限和/或第二触发器的触发门限,在重新配置触发门限后,相应的触发器重新开始工作。如果在第二预设时长内第二触发器都没被触发,表明实际输入的音频数据的音量比较小,可能环境较为安静,那么,为了保证之后的顺利采集,cpu可以将第二触发器的触发门限调小,以符合当前的环境。

另外,在通过cpu调整第一触发器的触发门限和/或第二触发器的触发门限,之前,若确定需调整第一触发器的触发门限,则确定第一触发器当前的触发门限是否已等于第一触发器的最小合法触发门限,如果第一触发器当前的触发门限大于第一触发器的最小合法触发门限,则可以将第一触发器的触发门限调小,而如果第一触发器当前的触发门限等于第一触发器的最小合法触发门限,则不再调整第一触发器的触发门限。对于第二触发器来说也是一样,若确定需调整第二触发器的触发门限,则确定第二触发器当前的触发门限是否已等于第二触发器的最小合法触发门限,如果第二触发器当前的触发门限大于第二触发器的最小合法触发门限,则可以将第二触发器的触发门限调小,而如果第二触发器当前的触发门限等于第二触发器的最小合法触发门限,则不再调整第二触发器的触发门限。触发器的最小合法触发门限可以跟触发器的性能等因素有关,通过这种方式,保证不会出现过度调整触发门限的情况。

上面介绍的是将第一触发器的触发门限和/或第二触发器的触发门限调小的情况,在另外一些可能的场景中,或许还涉及将第一触发器的触发门限和/或第二触发器的触发门限调大的情况,下面进行介绍。

例如,通过cpu可以监测,若发现第二触发器被触发的频率高于预设触发频率,即在一段时间内第二触发器被触发的次数过多,那么就认为第二触发器的触发门限设置的过低,过于容易被触发,可能会导致误触发,也增加了功耗。那么,可以通过cpu来调整第二触发器的触发门限,使得第二触发器的触发门限更适合当前的环境。此时,第一触发器的触发门限也可以视情况确定调整或不调整。

需说明的是,本发明实施例所介绍的第一触发器、第二触发器、第一计时器、第二计时器、以及fifo的检测器,可以通过软件形式实现,或者也可以通过硬件形式实现,本发明实施例不作限制,在上文中是以通过集成电路形式集成到音频系统中实现为例。

下面结合附图介绍本发明实施例提供的设备。

请参见图2,本发明一实施例提供一种音频数据采集设备,如果将第一触发器、第二触发器、第一计时器、第二计时器、以及fifo的检测器整体视为触发系统,即第一触发器、第二触发器、第一计时器、第二计时器、以及fifo的检测器都是触发系统的组成部分,那么该音频数据采集设备也属于该触发系统,例如该音频数据采集设备在该触发系统中可以相当于控制器。那么可以预见的,该音频数据采集设备所包括的功能模块可以通过软件来实现,或者可以通过硬件来实现。如前提到的处理器(例如cpu)以及fifo,属于音频输入系统。触发系统和音频输入系统可以位于同一设备中,例如触发系统和音频输入系统可以集成在一个芯片中。该设备包括数据运算模块201和数据通路控制模块202。

其中,数据运算模块201,用于在通过第一触发器和第二触发器检测音频信号的过程中,确定通过第一触发器检测的音频信号的能量大于或等于所述第一触发器的触发门限,则确定所述第一触发器被触发;所述第一触发器的触发门限小于第一预设阈值;

数据通路控制模块202,用于使能存储器的数据通道,以通过所述存储器采集输入到所述音频输入系统的音频数据。

在可能的实施方式中,该设备还包括检测模块203、唤醒模块204和操作模块205,请参见图3。因为检测模块203、唤醒模块204和操作模块205是可选的功能模块,为了与必选的功能模块相区分,在图3中将检测模块203、唤醒模块204和操作模块205画为虚线。

数据运算模块201还用于:在所述第一触发器被触发后的第一预设时长内,确定通过所述第二触发器检测的音频信号的能量大于或等于所述第二触发器的触发门限,则确定所述第二触发器被触发;所述第二触发器的触发门限大于第二预设阈值;

检测模块203用于:检测所述存储器存储的数据量是否达到所述存储器所能存储的最大数据量;

唤醒模块204用于:若确定所述存储器存储的数据量已达到所述存储器所能存储的所述最大数据量,则唤醒处理器;

操作模块205用于:通过所述处理器读取所述存储器中存储的音频数据。

在可能的实施方式中,该设备还包括系统休眠控制模块206以及识别模块207,请继续参见图3。因为系统休眠控制模块206和识别模块207是可选的功能模块,为了与必选的功能模块相区分,在图3中将系统休眠控制模块206和识别模块207画为虚线。

操作模块205还用于:通过所述处理器确定读取的音频数据不足以进行语音识别;

系统休眠控制模块206用于:指示所述处理器进入休眠状态;或者

操作模块205还用于:通过所述处理器确定读取的音频数据足以进行语音识别;

识别模块207用于:通过所述处理器根据读取的音频数据进行语音识别。

在可能的实施方式中,该设备还包括设置模块208,请继续参见图3。因为设置模块208是可选的功能模块,为了与必选的功能模块相区分,在图3中将设置模块208画为虚线。

数据运算模块201还用于:在所述第一触发器被触发后的第二预设时长内,若所述第二触发器没有被触发,则确定所述处理器是否处于休眠状态;

唤醒模块204还用于:若所述处理器处于所述休眠状态,则唤醒所述处理器;

设置模块208用于:通过所述处理器重新设置所述第一触发器和/或所述第二触发器的触发门限。

在可能的实施方式中,数据运算模块201还用于:

在设置模块208通过所述处理器重新设置所述第一触发器和/或所述第二触发器的触发门限之前,若需重新设置所述第一触发器的触发门限,则确定所述第一触发器的触发门限大于或等于所述第一触发器的最小合法触发门限;或

在设置模块208通过所述处理器重新设置所述第一触发器和/或所述第二触发器的触发门限之前,若需重新设置所述第二触发器的触发门限,则确定所述第二触发器的触发门限大于或等于所述第二触发器的最小合法触发门限。

在可能的实施方式中,

数据运算模块201还用于:在所述第一触发器被触发后的第一预设时长内,确定通过所述第二触发器检测的音频信号的能量均小于所述第二触发器的触发门限,则确定所述第二触发器未被触发;所述第二触发器的触发门限大于第二预设阈值;

数据通路控制模块202还用于:关闭所述存储器的所述数据通道。

在可能的实施方式中,该设备还包括设置模块208,如图3所示。

数据运算模块201还用于:通过所述处理器确定所述第二触发器的触发频率高于预设触发频率;

设置模块208用于:通过所述处理器重新设置所述第二触发器的触发门限。

该音频数据采集设备可以用于执行图1所示的实施例提供的方法,因此对于该设备中的各功能模块所能够实现的功能等可参考图1所示的实施例的介绍,不多赘述。

本发明实施例中,第一触发器的触发门限较低,因此第一触发器较容易被触发,在第一触发器被触发后,即可使能存储器的数据通道来采集音频数据,通过这种方式,可以减少漏采集的数据,也就是能够采集更多的音频数据,使得采集的音频数据更为完整,也使得后续的语音识别结果更为准确。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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