麦克风增益调节方法、装置、系统及存储介质
技术领域
本发明涉及语音控制技术领域,特别是涉及一种麦克风增益调节方法、装置、系统及存储介质。
背景技术
对于近几年出现的智能音箱,智能音箱箱体上设置有麦克风和扬声器,当扬声器播放音乐时,用户对智能音箱讲话,此时麦克风拾取音乐声音信号和用户声音信号,为了得到用户声音信号,需要采取回声消除算法将音乐声音信号滤除以得到用户声音信号。然而现有智能音箱通常对麦克风拾取到的声音信号进行增益放大处理,增益值固定且增益值较大,当扬声器播放音乐且音量较大时,智能音箱对麦克风拾取的音乐声音信号进行增益放大处理,得到的放大音乐声音信号会出现截幅现象,产生非线性失真。然而回声消除算法仅能够有效滤除线性声音信号,无法完全滤除非线性失真的声音信号,此时经回声消除算法处理后得到的用户声音信号不准确,导致在智能音箱播放音乐的音量较大时用户难以唤醒智能音箱。
发明内容
本发明主要提供一种麦克风增益调节方法,能够克服现有的在智能音箱播放音乐的音量较大时,经增益放大处理后的音乐声音信号产生非线性失真,导致用户难以唤醒智能音箱的问题。
为解决上述技术问题,本发明采用的一个技术方案是:提供麦克风增益调节方法,所述麦克风增益调节方法应用于智能音箱,所述智能音箱箱体上设置有麦克风和扬声器,所述麦克风增益调节方法包括:
获取所述扬声器所播放声音信号的音量值;
判断所述音量值是否大于预设音量阈值;
若是,则根据所述播放声音信号的音量值对预设麦克风增益做减小处理,并将减小后得到的目标增益设定为当前麦克风增益。
优选地,所述预设麦克风增益与所述目标增益之间关系为:
G=G0-△G
其中,G为目标增益,G0为预设麦克风增益,△G为降阶增益。
优选地,所述智能音响中预存有声音信号的音量值以及与所述音量值所对应的降阶增益;所述根据所述播放声音信号的音量值对预设麦克风增益做减小处理,并将减小后得到的目标增益设定为当前麦克风增益的步骤包括以下步骤:
根据所述播放声音信号的音量值获取与所述音量值所对应的降阶增益;
将预设麦克风增益减小所述降阶增益以得到目标增益;
将所述目标增益设定为当前麦克风增益。
优选地,设定所述预设音量阈值的步骤包括:
控制所述扬声器播放第一音量值的声音信号,以使所述麦克风所拾取的声音信号的音量平均值等于预设最大分贝值;
将所述第一音量值与所述扬声器的最大音量值的比值设定为所述预设音量值。
优选地,所述智能音箱中预存有音量阈值表,所述音量阈值表中包括声音类型以及与所述声音类型所对应的预设音量阈值;在所述获取所述扬声器所播放声音的音量值的步骤之前还包括以下步骤:
获取所述扬声器所播放的声音类型;
根据所述声音类型和预存的音量阈值表查询获取所述声音类型所对应的预设音量阈值。
优选地,所述获取所述扬声器所播放的声音类型的步骤之前还包括以下步骤:
检测判断所述扬声器是否在播放声音信号;
若没有在播放声音信号,则将预设麦克风增益设定为当前麦克风增益;
若在播放声音信号,则获取所述扬声器所播放的声音类型。
优选地,所述没有在播放声音信号包括暂停播放声音信号、停止播放声音信号。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种麦克风增益调节装置,所述麦克风增益调节装置包括:
音量获取模块,用于获取所述扬声器所播放声音信号的音量值;
音量判断模块,用于判断所述音量值是否大于预设音量阈值;
增益调节模块,用于当所述音量值大于预设音量阈值时,根据所述播放声音信号的音量值对预设麦克风增益做减小处理,并将减小后得到的目标增益设定为当前麦克风增益。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种麦克风增益调节系统,所述麦克风增益调节系统包括处理器以及存储器,所述处理器耦合所述存储器,所述处理器在工作时执行指令以实现所述的麦克风增益调节方法。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现所述的麦克风增益调节方法。
本发明的有益效果是:区别于现有技术的情况,本发明中获取扬声器所播放声音信号的音量值;判断音量值是否大于预设音量阈值;若是,则根据播放声音信号的音量值对预设麦克风增益做减小处理,并将减小后得到的目标增益设定为当前麦克风增益。本发明中的麦克风增益调节方法在扬声器播放声音信号的音量值大于预设音量阈值时,减小预设麦克风增益,将较小的麦克风增益设定为当前麦克风增益,避免扬声器发出的较大音量的声音信号被麦克风拾取放大后产生非线性失真,可得到准确的用户声音信号,进而保证有效唤醒智能音响。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,其中:
图1是本发明一实施例提供的麦克风增益调节方法的流程图;
图2是本发明另一实施例提供的麦克风增益调节方法的流程图;
图3是本发明另一实施例提供的麦克风增益调节装置的结构示意图;
图4是本发明另一实施例提供的麦克风增益调节系统的结构示意图;
图5是本发明另一实施例提供的存储介质的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明一实施例提供的麦克风增益调节方法的流程图,麦克风增益调节方法应用于智能音箱,智能音箱箱体上设置有麦克风和扬声器,麦克风增益调节方法包括步骤S100、步骤S200及步骤S300。
步骤S100:获取扬声器所播放声音信号的音量值。
具体的,获取扬声器当前所播放声音信号的音量值。
步骤S200:判断音量值是否大于预设音量阈值。
具体的,判断当前扬声器所播放声音信号的音量值是否大于预设音量阈值。
进一步具体的,预设音量阈值的设定步骤包括:控制扬声器播放第一音量值的声音信号,以使麦克风所拾取的声音信号的音量平均值等于预设最大分贝值;将第一音量值与扬声器的最大音量值的比值设定为预设音量值。当扬声器播放第一音量值的声音信号时,麦克风拾取到的声音信号的音量平均值等于预设最大分贝值。麦克风拾取到的声音信号为被麦克风收集到的原始声音信号,而非被麦克风增益放大后的声音信号,预设最大分贝值为所采用的回声消除算法所支持的音量的最大值,如可为90dB。扬声器的最大音量值为扬声器播放声音所能达到的最大音量值。
步骤S300:若是,则根据播放声音信号的音量值对预设麦克风增益做减小处理,并将减小后得到的目标增益设定为当前麦克风增益。
具体的,若扬声器所播放声音信号的音量值大于预设音量阈值,则根据播放声音信号的音量值对预设麦克风增益做减小处理,并将减小后得到的目标增益设定为当前麦克风增益。预设麦克风增益为智能音箱原始默认的麦克风增益。
进一步具体的,预设麦克风增益与目标增益之间关系为:G=G0-△G。其中,G为目标增益,G0为预设麦克风增益,△G为降阶增益。降阶增益与扬声器播放声音信号的音量值有关,智能音响中预存有声音信号的音量值以及与音量值所对应的降阶增益,调整麦克风增益的过程为:根据播放声音信号的音量值获取与音量值所对应的降阶增益;将预设麦克风增益减小降阶增益以得到目标增益;将目标增益设定为当前麦克风增益。
进一步具体的,降阶增益与扬声器播放声音信号的音量值之间的关系的确定过程为:控制扬声器播放第二音量值的声音信号,使得麦克风所拾取的声音信号的音量平均值为第一分贝,第一分贝=(预设音量阈值+1)dB;调节麦克风增益,获取经麦克风增益放大后的声音信号不出现截幅时所对应的最大麦克风增益,该最大麦克风增益为第一麦克风增益,根据该第一麦克风增益获取第一降阶增益,并保存第一降阶增益与第二音量值之间的对应关系。其中,第一降阶增益=预设麦克风增益-第一麦克风增益。获取到第一降阶增益与第二音量值之间的对应关系后,控制扬声器播放第三音量值的声音信号,使得麦克风所拾取的声音信号的音量平均值为第二分贝,第二分贝=(预设音量阈值+2)dB;调节麦克风增益,获取经麦克风增益放大后的声音信号不出现截幅时所对应的最大麦克风增益,该最大麦克风增益为第二麦克风增益,根据该第二麦克风增益获取第二降阶增益,并保存第二降阶增益与第三音量值之间的对应关系。其中,第二降阶增益=预设麦克风增益-第二麦克风增益;依此类推,控制扬声器播放第四音量值的声音信号,使得麦克风所拾取的声音信号的音量平均值为第三分贝,第三分贝=(预设音量阈值+3)dB;调节麦克风增益,获取经麦克风增益放大后的声音信号不出现截幅时所对应的最大麦克风增益,该最大麦克风增益为第三麦克风增益,根据该第三麦克风增益获取第三降阶增益,并保存第三降阶增益与第四音量值之间的对应关系。其中,第三降阶增益=预设麦克风增益-第三麦克风增益;如此类推,以确定多组降阶增益与音量值之间的对应关系。其中,第N分贝=(预设音量阈值+N)dB,N为大于等于1的整数。
在本发明实施例中,在扬声器播放声音信号的音量值大于预设音量阈值时,减小预设麦克风增益,将较小的麦克风增益设定为当前麦克风增益,避免扬声器发出的较大音量的声音信号被麦克风拾取放大后产生非线性失真,可得到准确的用户声音信号,进而保证有效唤醒智能音响。
实施例二
图2为本发明另一实施例提供的麦克风增益调节方法的流程图,该麦克风增益调节方法在包括上述步骤S100、S200、S300的基础上,还包括以下步骤S400及步骤S500,步骤S400和步骤S500在步骤S100之前执行。
步骤S400:获取扬声器所播放的声音类型。
具体的,扬声器所播放声音类型包括音乐、系统提示音或按预设文本播放的声音。
步骤S500:根据声音类型和预存的音量阈值表查询获取声音类型所对应的预设音量阈值。
具体的,不同声音类型对应相同或不同的预设音量阈值,智能音箱中预存有音量阈值表,音量阈值表中包括声音类型以及与声音类型所对应的预设音量阈值,根据声音类型查询获取对应的预设音量阈值。当不同声音类型对应不同的预设音量阈值时,每种声音类型所对应的预设音量阈值的设定步骤与步骤S200中设定预设音量阈值的步骤相同。
优选地,在获取扬声器所播放的声音类型的步骤之前还可包括以下步骤:检测判断扬声器是否在播放声音信号;若没有在播放声音信号,则将预设麦克风增益设定为当前麦克风增益;若在播放声音信号,则获取扬声器所播放的声音类型。其中,没有在播放声音信号包括暂停播放声音信号、停止播放声音信号的情形。
在本发明实施例中,首先检测扬声器是否在播放声音信号,若没有在播放声音信号则不进行麦克风增益调节的过程,若在播放声音信号,则获取扬声器所播放声音信号的类型,根据声音类型查询对应的预设音量阈值,以区分不同声音类型所对应调节麦克风增益的条件,使得麦克风增益调节更为精确。
实施例三
图3为本发明另一实施例提供的麦克风增益调节装置的结构示意图,麦克风增益调节装置包括音量获取模块100、音量判断模块200及增益调节模块300。
音量获取模块100用于获取扬声器所播放声音信号的音量值;
音量判断模块200用于判断音量值是否大于预设音量阈值;
增益调节模块300用于当音量值大于预设音量阈值时,根据播放声音信号的音量值对预设麦克风增益做减小处理,并将减小后得到的目标增益设定为当前麦克风增益。
本发明实施例提供的麦克风增益调节装置的具体实现与麦克风增益调节方法的具体实现相同,麦克风增益调节装置的具体实现可参阅上述实施例一和实施例二的描述,在此不再赘述。
本发明实施例中,麦克风增益调节装置在扬声器播放声音信号的音量值大于预设音量阈值时,减小预设麦克风增益,将较小的麦克风增益设定为当前麦克风增益,避免扬声器发出的较大音量的声音信号被麦克风拾取放大后产生非线性失真,可得到准确的用户声音信号,进而保证有效唤醒智能音响。
实施例四
图4为本发明另一实施例提供的麦克风增益调节系统的结构示意图,麦克风增益调节系统包括处理器400以及存储器500,处理器400耦合存储器500,处理器400在工作时执行指令以实现上述任一实施例中的麦克风增益调节方法。
其中,处理器400还可以称为CPU(Central Processing Unit,中央处理单元)。处理器400可能是一种集成电路芯片,具有信号的处理能力。处理器400还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,但不仅限于此。
实施例五
参阅图5,图5是本发明另一实施例提供的存储介质的示意图,本实施例中的计算机可读存储介质存储有计算机程序600,该计算机程序600能够被处理器400执行以实现上述任一实施例中的麦克风增益调节方法。
可选的,该可读存储介质可以是U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
本发明中获取扬声器所播放声音信号的音量值;判断音量值是否大于预设音量阈值;若是,则根据播放声音信号的音量值对预设麦克风增益做减小处理,并将减小后得到的目标增益设定为当前麦克风增益。本发明中的麦克风增益调节方法在扬声器播放声音信号的音量值大于预设音量阈值时,减小预设麦克风增益,将较小的麦克风增益设定为当前麦克风增益,避免扬声器发出的较大音量的声音信号被麦克风拾取放大后产生非线性失真,可得到准确的用户声音信号,进而保证有效唤醒智能音响。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。