一种音频信号的自动增益控制方法和装置与流程

文档序号:12274094阅读:310来源:国知局
一种音频信号的自动增益控制方法和装置与流程

本发明实施例涉及音频数据处理技术,尤其涉及一种音频信号的自动增益控制方法和装置。



背景技术:

当前,语音实时通信已经得到了十分广泛的应用,利用语音通信,不仅可以实现双方通信,还可以进一步实现多方通信。随着语音通信的不断发展,音频数据处理技术在一定程度上也得到了相应的提高。

在现有技术中,为了减小音频信号的不连续性,提升语音通信的服务质量,一般采用自动增益控制方法(Automatic Gain Control,AGC)对音频信号进行处理。其中,自动增益控制方法可以下两种方案包括:(1)以数据帧为分析基础,计算当前帧中各个采样点振幅值绝对值的平均幅值,将当前帧中的目标幅值除以平均幅值后得到当前帧的增益值,然后基于该增益值调整当前帧音频信号的输出幅值,从而实现音量的调整。(2)同样以数据帧为分析基础,分别计算音频信号前后两帧的增益值,并将各帧的增益值平均分配到各采样点中。为了实现前后两帧增益的平滑过渡,通常将前一帧最后一个采样点的增益值作为当前帧第一个采样点的增益值,基于确定的帧增益值调整各帧音频信号的幅值。

现有自动增益控制方法仅是从音频信号在时域中的平滑度进行考虑,虽然可以对音频信号的处理达到了良好的效果,但由于该方法忽略了对信号频域的影响,将会使得频域中的音频信号产生失真现象。例如,图1为现有技术提供的对音频信号增益调整前后示意图。图2为现有技术提供的对音频信号增益调整前后的仿真示意图。如图1和图2所示,若采用上述方案(1)进行增益调整后,音频信号会出现“消顶”失真现象,即当音频信号的幅值经增益放大时,为了防止超出允许的最大音量,会将超出设定幅值的音频信号强制调整幅值为设定值,使其不会继续增长,所以会出现消顶失真现象。再比如,图3为现有技术提供的对音频信号增益调整前后示意图。图4为现有技术提供的对音频信号增益调整前后的仿真示意图。如图3和图4所示,若采用上述方案(2)进行增益调整后,会使得增益调整后的斜率发生改变,进而使得在频域中的音频信号发生失真现象。同时由于人耳对频域中信号的变化非常敏感,稍有差异用户即可分辨出来,因此,将可能带来不好的用户体验。



技术实现要素:

本发明实施例提供一种音频信号的自动增益控制方法和装置,在时域中对音频信号进行增益调整的同时,也能在极大程度上降低频域中音频信号的失真度,达到提升用户体验的效果。

第一方面,本发明实施例提供了一种音频信号的自动增益控制方法,包括:

在待处理音频信号中识别幅值过零点,将相邻过零点之间确定为过零区间;

根据所述过零区间确定至少一个增益调整区间;

根据历史增益调整区间的音频信号幅值对当前增益调整区间内的音频信号峰值进行平滑处理;

根据平滑处理后的音频信号峰值确定所述当前增益调整区间的调整增益;

根据所述调整增益对所述当前增益调整区间音频信号的幅值进行调整并输出。

第二方面,本发明实施例还提供一种音频信号的自动增益控制装置,包括:

过零区间确定模块,用于在待处理音频信号中识别幅值过零点,将相邻过零点之间确定为过零区间;

调整区间确定模块,用于根据所述过零区间确定至少一个增益调整区间;

平滑处理模块,用于根据历史增益调整区间的音频信号幅值对当前增益调整区间内的音频信号峰值进行平滑处理;

调整增益确定模块,用于根据平滑处理后的音频信号峰值确定所述当前增益调整区间的调整增益;

幅值调整模块,用于根据所述调整增益对所述当前增益调整区间音频信号的幅值进行调整并输出。

本发明实施例中提供的音频信号的自动增益控制方案,在待处理音频信号中识别幅值过零点,将相邻过零点之间确定为过零区间,然后根据过零区间确定至少一个增益调整区间。接着根据历史增益调整区间的音频信号幅值对当前增益调整区间内的音频信号峰值进行平滑处理后,根据平滑处理后的音频信号峰值确定当前增益调整区间的调整增益。最后根据调整增益对当前增益调整区间音频信号的幅值进行调整并输出。通过采用上述技术方案,由于采用峰值来确定调整增益,因此调整增益可有效匹配最大幅值的音频信号调整,避免了消顶失真现象。同时,每个增益调整区间可单独确定调整增益,使得增益精度提高,也极大程度上降低频域中音频信号的失真度。此外,通过对当前增益调整区间内的音频信号峰值进行平滑处理,可以在音频信号的有效状态发生突变时实现音频信号的平滑过渡,达到提升用户体验的效果。

附图说明

图1为现有技术提供的对音频信号增益调整前后示意图;

图2为现有技术提供的对音频信号增益调整前后的仿真示意图;

图3为现有技术提供的对音频信号增益调整前后示意图;

图4为现有技术提供的对音频信号增益调整前后的仿真示意图。

图5为本发明实施例一提供的一种音频信号的自动增益控制方法的流程示意图;

图6为本发明实施例一提供的对采样点增益调整前后示意图;

图7为本发明实施例二提供的一种音频信号的自动增益控制方法的流程示意图;

图8为本发明实施例三提供的一种音频信号的自动增益控制方法的流程示意图;

图9为本发明实施例三提供的一种优选的音频信号的自动增益控制方法的流程示意图;

图10为本发明实施例四提供的一种音频信号的自动增益控制装置的结构框图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图5为本发明实施例一提供的一种音频信号的自动增益控制方法的流程示意图,该方法可以由音频信号的自动增益控制装置来执行,具体包括如下步骤:

步骤101、在待处理音频信号中识别幅值过零点,将相邻过零点之间确定为过零区间。

其中,自动增益控制方法是对音频信号输出音量进行调整的一种控制方法,该方法利用线性放大和压缩的有效组合对输出的音频信号进行动态调整。当弱音频信号输入时,通过增大音频信号的增益可以保证输出音频信号的强度;当所输入的音频信号达到一定强度时,通过减小音频信号的增益可以使输出的音频信号的幅值降低。也就是说,自动增益控制可以通过改变音频信号输入输出幅值的压缩比例来自动调整输出音频信号的幅值。本实施例所提供的自动增益控制方法也是通过调整音频信号幅值的形式实现。

示例性的,本实施例中的音频信号可以为语音实时通信过程中的音频信号,也可以为通过多媒体播放出的音频信号。其中,待处理音频信号可包括有效音频信号,即语音接收端能够接收到的语音发送端所发送的音频信号。示例性的,待处理音频信号也可包括噪音音频信号,即除语音接收端可以接收到发送端所发送的有效音频信号之外的其他所有音频信号。

示例性的,在对音频信号进行处理的过程中,一般可将音频信号按照固定时长分为若干音频帧,其中,固定时长也预先进行设定。对于若干音频帧中的每一帧音频信号都包括若干个采样点,每个采样点分别具有各自的振幅值。具体的,可以将10ms内所采集的样点作为一帧,帧长可由用户自行设定。例如,若在采样频率为16KHz的情况下,一帧10ms可以采集160个样点。在本实施例中,对待处理音频信号的识别过程实际上也就是对若干个音频帧中的各个采样点进行识别的过程。例如,可以从语音发送端所发送的音频信号的数据流中抓取一帧作为当前待处理的音频帧,也可以将音频信号的数据流中的连续几帧作为当前待处理的音频帧。

其中,在待处理音频信号中识别幅值过零点可包括:在所述待处理音频信号中,判断当前采样点幅值与任一相邻的采样点幅值的乘积是否为0,或与所述当前采样点相邻的两个采样点的幅值是否异号;若是,则确定当前采样点为所述待处理音频信号中的幅值过零点。

在本实施例中,在确定出待处理的音频帧后,可以识别出音频帧中幅值过零的采样点,然后将相邻两个零点之间的区间确定为过零区间。对于当前待处理的音频帧,可以确定多个过零区间。值得注意的是,在过零区间确定的过程中,需要保证过零区间的完整性。例如,对于两个采样点,若其中一个采样点的幅值为零,而另一个采样点的幅值不为零,则这两个采样点所形成的区间不能确定为过零区间。示例性的,可以通过编写过零检测的C代码实现对过零点的检测,在识别音频信号幅值过零点的过程中调用该代码即可。通过采用软件编程的方式实现过零点的检测,可以达到降低成本的效果。具体的,C代码可以具体为以下形式:

其中,数组Data的长度为2N,i表示第i个采样点。

步骤102、根据过零区间确定至少一个增益调整区间。

示例性的,在对各个采样点进行增益调整之前,可以首先确定需要进行增益调整的增益调整区间。具体的,可以将每个过零区间确定为一个增益调整区间,也可以将连续的至少两个过零区间确定为一个增益调整区间。可以理解的是,所确定的增益调整区间范围越小,后续对增益调整区间内采样点的幅值调整将越准确。

步骤103、根据历史增益调整区间的音频信号幅值对当前增益调整区间内的音频信号峰值进行平滑处理。

其中,音频信号峰值为在当前增益调整区间内,所有采样点振幅绝对值的最大值。音频信号的峰值可由音频信号的自动增益控制装置默认设定。

音频信号的峰值并不是固定不变的,其可随语音发送端当前的状态或者根据语音发送端所处环境的改变而发生变化。在语音通话过程中有可能出现突然的音量增大,或者的音量起伏较大。这种情况下,若每个过零区间内仍然采用峰值来确定调整增益,则可能出现相邻过零区间的增益差别较大的情况,给人带来音量突变的不佳感受。所以本实施例根据历史音频信号的峰值对当前音频信号峰值进行平滑处理,可以使得在一定情况下发生突变的峰值不必过于突兀,进而实现各个增益调整区间的音频信号的平滑过渡。例如,在实时语音通信的过程中,讲话用户(语音发送端)所发出的字与字之间存在一定的时间间隔。由于该间隔区间内音频信号的峰值较小,一般可将该间隔区间内的音频信号看作噪音音频一类。通过对音频信号峰值进行平滑处理,可以使得间隔区间内音频信号的峰值增大,并且与原有有效音频实现平滑过渡。再比如,噪音音频也可能会存在突发情况(音量突然提升),经过平滑处理后,可以使得突发的噪声恢复到原有状态,而不会被放大。

示例性的,根据历史增益调整区间的音频信号幅值对当前增益调整区间内的音频信号峰值进行平滑处理的方式可包括:根据上一个增益调整区间的平滑后音频信号峰值按照如下公式对当前增益调整区间内的音频信号峰值进行平滑处理:

Peak1=α*Peak+(1-α)*Peak0;

其中,Peak0为上一个增益调整区间的平滑后音频信号峰值,Peak为当前增益调整区间内的音频信号峰值,Peak1为当前增益调整区间内经过平滑处理后的音频信号峰值,α为小于1的常数。由于上一个增益调整区间是与当前增益调整区间最接近的一个区间,因此,采用上一个增益调整区间的平滑后音频信号峰值可以实现当前增益调整区间音频信号的有效状态在发生突变情况下的平滑过渡,达到提升用户体验的效果。

步骤104、根据平滑处理后的音频信号峰值确定当前增益调整区间的调整增益。

示例性的,若将每个过零区间确定为一个增益调整区间,则对音频信号过零区间增益的调整实际上是对该过零区间内采样点幅值的调整,因此可以根据平滑处理后当前过零区间中采样点的振幅绝对值的最大值确定出当前过零区间的调整增益。值得注意的是,调整增益的不同将直接影响音频信号的输出效果。例如,如果确定出的调整增益大于1,表示当前音频信号需要被放大;如果确定出的调整增益小于1,表示当前音频信号需要被压缩。需要说明的是,由于每个过零区间内音频信号的峰值不一定完全相同,因此,基于平滑处理后的音频信号峰值所确定的调整增益只适用于当前过零区间。这样设置的好处在于可以通过计算每个过零区间的音频信号的峰值后,确定出当前过零区间的调整增益,进而可以使得音频信号自动增益的调整更加具有针对性,并且可以提高增益精度。

本领域技术人员可以理解的是,统计采样点振幅绝对值的最大值的实现方式可以有很多种,本实施例不作具体限定。优选的,可通过编写C代码来获取过零区间内所有采样点的振幅值,然后可以计算所有采样点振幅值的绝对值,并从所有绝对值中获取到绝对值最大值。具体操作如下:

其中,Peak为采样点振幅绝对值的最大值,i表示第i个过零区间。

步骤105、根据调整增益对当前增益调整区间音频信号的幅值进行调整并输出。

示例性的,在确定出当前增益调整区间(当前过零区间)的调整增益后,可以将当前增益调整区间内的采样点的幅值均乘以调整增益进而使得采样点的幅值尽可能地达到目标幅值,从而达到调整音量的效果。在具体实施过程中,可采用如下C代码执行:

FOR j=1:Index[i+1]-Index[i]

Data[Index[i]+j]=Data[Index[i]+j]*Gain;

END

示例性的,若所确定的当前过零区间的调整增益大于1,则当前过零区间中所有采样点的幅值乘以该调整增益后,幅值均会增大,因此输出的音频信号将会被放大,用户所能听到的音量也会相应增大。若所确定的当前过零区间的调整增益小于1,则当前过零区间中所有采样点的幅值乘以该调整增益后,幅值均会减小,因此输出的音频信号将会被压缩,用户所能听到的音量也会相应降低。因此,通过对当前过零区间音频信号的幅值的调整可以达到用户所需要的音量。图6为本发明实施例一提供的对采样点增益调整前后示意图。如图6所示,根据步骤104中所确定的调整增益对当前增益调整区间采样点的幅值进行调整后,可以将大于目标幅值(TargetLevel)的采样点的幅值减小,也可以将大于噪音门限值(NoiseGate)且小于目标幅值(TargetLevel)的有效音频的采样点的幅值增大(尽可能达到目标音量),同时也可将小于噪音门限值(NoiseGate)的噪音音频信号采样点幅值减小(对噪音信号进行抑制)。值得注意的是,在对各个采样点的幅值进行增益调整后,各个采样点之间的斜率未发生很大的改变,因此可以表明,在频域中音频信号未发生明显的失真现象所以,通过采用上述方式对当前增益调整区间音频信号的幅值经过调整输出后,语音接收端接收到的音频信号不仅在时域中可以达到所需要的音量,同时也可保证频域中音频信号尽可能少的失真,提升了用户体验。

本发明实施例中提供的音频信号的自动增益控制方法,通过采用上述技术方案,由于采用峰值来确定调整增益,因此调整增益可有效匹配最大幅值的音频信号调整,避免了消顶失真现象。同时,每个增益调整区间可单独确定调整增益,使得增益精度提高,也极大程度上降低频域中音频信号的失真度。此外,通过对当前增益调整区间内的音频信号峰值进行平滑处理后,可以在音频信号的有效状态发生突变时实现音频信号的平滑过渡,达到提升用户体验的效果。

实施例二

图7为本发明实施例二提供的一种音频信号的自动增益控制方法的流程示意图。本实施例以上述实施例为基础进行优化,在本实施例中,将步骤“根据平滑处理后的音频信号峰值确定所述当前增益调整区间的调整增益”优化为“如果根据平滑处理后的音频信号峰值确定为有效音频,则根据所述平滑处理后的音频信号峰值确定所述当前增益调整区间的调整增益;如果根据平滑处理后的音频信号峰值确定为噪音音频,将所述当前增益调整区间的调整增益设置为设定的噪音抑制增益”。同时,将确定为噪音音频和有效音频之后的过程进行了细化,参照图7,本实施例的方法包括如下步骤:

步骤201、在待处理音频信号中识别幅值过零点,将相邻过零点之间确定为过零区间。

步骤202、根据过零区间确定至少一个增益调整区间。

步骤203、根据历史增益调整区间的音频信号幅值对当前增益调整区间内的音频信号峰值进行平滑处理。

步骤204、根据平滑处理后的音频信号峰值判断音频信号的有效状态是否为有效音频,若是,则执行步骤205;若否,则执行步骤206。

示例性的,音频信号的有效状态可包括有效音频和噪音音频。其中,有效音频可以为语音接收端能够接收到的语音发送端所发送的音频信号。噪音音频可以为语音接收端可以接收到发送端所发送的有效音频信号之外的其他所有音频信号(例如环境声音等)。

示例性的,音频信号的有效状态的确定方式可以有多种,本实施例在此不做具体限定。例如,可以通过语音活动检测算法(Voice Activity Detection,VAD)来确定音频信号的有效状态,以区分有效音频和噪音音频。

优选的,音频信号有效状态的确定方式也可以为将当前增益调整区间内平滑处理后的音频信号峰值与噪音门限值进行比较,如果大于噪音门限值,则确定为有效音频;如果小于或等于噪音门限值,则确定为噪音音频。其中,噪音门限值为实际操作过程中,经过大量实验统计后所得到的经验值。通过噪音门限值的设置可以将有效音频和噪音音频进行有效区分。示例性的,噪音门限值也可通过其他测验或者计算方法进行设置,本实施在此不做具体限定。

步骤205、将设定目标幅值除以平滑处理后的音频信号峰值,作为当前增益调整区间的调整增益。

其中,目标幅值与噪音门限值的确定方式类似,也为在实际操作过程中,经过大量实验统计后所得到的经验值。在目标幅值下音频信号的播放效果最好。

示例性的,在确定出音频信号的有效状态为有效音频时,可以将经平滑处理后的该有效音频信号的峰值(幅值绝对值的最大值)与音频信号的目标幅值作比较,进而确定出当前增益调整区间(当前过零区间)的调整增益。示例性的,当前增益调整区间的调整增益可通过将目标幅值与平滑处理后的当前增益调整区间内的有效音频信号峰值相除获得。上述处理方式的好处在于,通过比较当前增益调整区间内音频信号幅值绝对值的最大值与目标幅值的差异,可以有针对性地调整当前增益调整区间内采样点的幅值,使得当前过零区间内所有的采样点的幅值经调整后可以尽可能地达到目标幅值。从而使得音频信号在输出后音量可以达到用户所需要的音量,提升用户体验。

步骤206、将当前增益调整区间的调整增益设置为设定的噪音抑制增益。

在实时语音通信过程中,噪音音频的音量一般会低于有效音频的音量,因此可以通过采用一定方法对低音量的噪音音频进行抑制,使其音量尽可能降到最低而不会影响正常的语音通信。

示例性的,对噪音音频进行抑制的方式可以为将当前增益调整区间的调整增益设置为设定的噪音抑制增益。其中,设定的噪音抑制增益为在实际操作过程中,经过大量实验统计后所得到的经验值,该经验值大于0且小于1,表示对噪音音频的压缩比例。通过采用该经验值可以使得噪音音频的压缩效果最好。通过采用上述设置方式,可以实现对噪音音频的抑制,进而可以提高语音通信的质量,提升用户体验。

步骤207、根据调整增益对所述当前增益调整区间音频信号的幅值进行调整并输出。

本实施例在上述实施例的基础上,通过根据平滑处理后的音频信号峰值确定出音频信号的有效状态后,可根据其有效状态的不同相应地确定出当前增益调整区间的调整增益,使得所确定的调整增益更具针对性和准确性。

实施例三

图8为本发明实施例三提供的一种音频信号的自动增益控制方法的流程示意图。本实施例三对上述实施例“在待处理音频信号中识别幅值过零点,将相邻过零点之间确定为过零区间”的过程进行了细化,参照图8,本实施例的方法包括如下步骤:

步骤301、将音频信号数据流中的上一帧音频信号与当前帧音频信号拼合为待处理音频信号。

其中,音频信号数据流中上一帧音频信号表示当前要处理并播放的音频信号。当前帧音频信号表示即将要处理的音频信号。将上一帧音频信号与当前帧音频信号拼合后作为待处理音频信号,可以保证接收端所接收到音频信号的平滑性。由于上一帧音频信号与当前帧音频信号的拼合,将导致待处理的音频信号的帧长度增大。示例性的,若上一帧音频信号和当前帧音频信号的帧长度都为N,则将上一帧音频信号与当前帧音频信号拼合后,当前待处理音频信号的帧长度为N+N=2N。

步骤302、在待处理音频信号中识别幅值过零点,直至当前帧音频信号的第一个过零点。

将上一帧音频信号与当前帧音频信号的拼合后,上一帧音频信号最后一个过零点可以作为当前帧音频信号的第一个过零点。同时,上一帧音频信号的最后一个过零区间也可以作为当前音频信号的第一个过零区间。通过将上一帧音频信号与当前帧音频信号的拼合,也可以保证过零区间的完整性。

步骤303、将相邻过零点之间确定为过零区间。

步骤304、根据过零区间确定至少一个增益调整区间。

步骤305、根据历史增益调整区间的音频信号幅值对当前增益调整区间内的音频信号峰值进行平滑处理;

步骤306、、根据平滑处理后的音频信号峰值判断音频信号的有效状态是否为有效音频,若是,则执行步骤307;若否,则执行步骤308。

步骤307、将设定目标幅值除以平滑处理后的音频信号峰值,作为当前增益调整区间的调整增益。

步骤308、将当前增益调整区间的调整增益设置为设定的噪音抑制增益。

步骤309、根据调整增益对当前增益调整区间音频信号的幅值进行调整并输出。

示例性的,图9为本发明实施例三提供的一种优选的音频信号的自动增益控制方法的流程示意图。如图9所示,在当前获取到一帧音频数据并且与前一帧音频数据进行拼接后,首先需要统计前一帧数据中过零点的个数,并且将前一帧数据中最后一个过零点作为当前帧中第一个过零点。然后统计过零点之间的采样点振幅绝对值的最大值Peak0,并对Peak0按照公式Peak1=α*Peak+(1-α)*Peak0进行平滑处理后得到当前增益调整区间内平滑后的音频信号峰值Peak1,其中,Peak表示当前增益调整区间内的音频信号峰值,α为小于1的常数。接着将平滑后的峰值Pake1与噪音门限值NoiseGate进行比较,如果Pake1>NoiseGate时,则可以确定当前音频为有效音频,并将峰值与目标幅值TargetLevel相比得到当前过零区间的增益调整的差值Gain:如果Pake1≤NoiseGate时,则可以确定当前音频为噪音音频,因此,需要对该噪音音频进行抑制,其抑制方法为将当前过零区间的调整增益Gain设置为设定的噪音抑制增益Gain_NG,其中Gain_NG<1。在确定出经平滑处理后有效音频信号当前过零区间的调整增益和噪音音频信号当前过零区间的调整增益后,根据调整增益可对当前过零区间音频信号的幅值进行调整,其调整方式为:将过零点之间的所有样点均乘以增益差值Gain。最后,可以输出经过幅值调整后的音频信号。

本实施例三在上述实施例的基础上,通过将音频信号数据流中的上一帧音频信号与当前帧音频信号拼合后,可以保证待处理音频信号中过零区间的完整性,同时也可以实现上一帧音频信号到当前帧音频信号的平滑过渡。

实施例四

图10为本发明实施例四提供的一种音频信号的自动增益控制装置的结构框图。该装置可由软件和/或硬件实现,可执行音频信号的自动增益控制方法。如图10所示,该装置包括:过零区间确定模块401、调整区间确定模块402、平滑处理模块403、调整增益确定模块404和调整增益确定模块405。

其中,过零区间确定模块401,用于在待处理音频信号中识别幅值过零点,将相邻过零点之间确定为过零区间;调整区间确定模块402,用于根据所述过零区间确定至少一个增益调整区间;平滑处理模块403,用于根据历史增益调整区间的音频信号幅值对当前增益调整区间内的音频信号峰值进行平滑处理;调整增益确定模块404,用于根据平滑处理后的音频信号峰值确定所述当前增益调整区间的调整增益;幅值调整模块405,用于根据所述调整增益对所述当前增益调整区间音频信号的幅值进行调整并输出。

本发明实施例中提供的一种音频信号的自动增益控制装置,通过采用上述技术方案,由于采用峰值来确定调整增益,因此调整增益可有效匹配最大幅值的音频信号调整,避免了消顶失真现象。同时,每个增益调整区间可单独确定调整增益,使得增益精度提高,也极大程度上降低频域中音频信号的失真度。此外,通过对当前增益调整区间内的音频信号峰值进行平滑处理,可以在音频信号的有效状态发生突变时实现音频信号的平滑过渡,达到提升用户体验的效果。

在上述实施例的基础上,所述调整区间确定模块具体用于:将每个过零区间确定为一个增益调整区间;或将连续的至少两个过零区间确定为一个增益调整区间。

在上述实施例的基础上,所述平滑处理模块具体用于:根据上一个增益调整区间的平滑后音频信号峰值按照如下公式对当前增益调整区间内的音频信号峰值进行平滑处理:Peak1=α*Peak+(1-α)*Peak0;其中,Peak0为上一个增益调整区间的平滑后音频信号峰值,Peak为当前增益调整区间内的音频信号峰值,Peak1为当前增益调整区间内经过平滑处理后的音频信号峰值,α为小于1的常数。

在上述实施例的基础上,所述调整增益确定包括:

第一调整增益单元,用于如果根据平滑处理后的音频信号峰值确定为有效音频,则根据所述平滑处理后的音频信号峰值确定所述当前增益调整区间的调整增益;第二调整增益单元,用于如果根据平滑处理后的音频信号峰值确定为噪音音频,将所述当前增益调整区间的调整增益设置为设定的噪音抑制增益。

在上述实施例的基础上,所述第一调整增益单元具体用于:将设定目标幅值除以所述平滑处理后的音频信号峰值,作为所述当前增益调整区间的调整增益。

在上述实施例的基础上,所述过零区间确定模块具体用于:将音频信号数据流中的上一帧音频信号与当前帧音频信号拼合为待处理音频信号;在待处理音频信号中识别幅值过零点,直至当前帧音频信号的第一个过零点;将相邻过零点之间确定为过零区间。

上述实施例中提供的音频信号的自动增益控制装置可执行本发明任意实施例所提供的音频信号的自动增益控制方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的音频信号的自动增益控制方法。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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