声音处理的方法和终端设备
技术领域
本发明涉及终端设备领域,并且更具体地,涉及声音处理的方法和终端设备。
背景技术
随着手机多媒体功能和应用越来越丰富,卡拉OK应用作为新兴应用越来越受到欢迎。这类应用主要通过播放伴奏音视频、同时通过麦克风将演唱者声音录制下来,经过声音美化处理之后与伴奏合成。典型的应用包括K歌达人、唱吧等等。
卡拉OK技术对于录放音通道的延迟要求极高(延迟小于50ms),否则人耳能感受到美化后的声音延迟于自己演唱的声音,而这个延迟主要是软件平台引入的。例如,在安卓平台上,由于应用层设计延迟偏大(100ms以上),如果进行声音的实时输入、实时美化并实时输出,则经过美化处理并输出的声音会明显延迟于用户演唱的声音。
发明内容
本发明实施例提供一种声音处理的方法和终端设备,能够减小经过美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出。
第一方面,提供了一种声音处理的方法,包括获取模拟的第一声音信号;对所述第一声音信号进行模数转换生成数字的第二声音信号;在系统底层对所述第二声音信号进行混响处理生成数字的第三声音信号,其中所述系统底层包含框架层、硬件抽象层、驱动层和编解码CODEC层中的至少一种;对所述第三声音信号和从应用层下发的背景声音信号进行数字混音处理,生成数字的第四声音信号;对所述第四声音信号进行数模转换生成模拟的第五声音信号;对所述第一声音信号和所述第五声音信号进行模拟混音处理生成模拟的第六声音信号;播放所述第六声音信号。
结合第一方面,在其第一种实现方式中,所述系统底层包含所述框架层、硬件抽象层、驱动层中的至少一种时,所述在系统底层对所述第二声音信号进行混响处理生成数字的第三声音信号,包括:通过录音通路将所述第二声音信号发送给位于所述系统底层的混响装置;通过所述混响装置对所述第二声音信号进行混响处理,生成具有混响效果的所述第三声音信号。
结合第一方面及其上述实现方式,在其第二种实现方式中,所述系统底层为所述CODEC层时,所述在系统底层对所述第二声音信号进行混响处理生成数字的第三声音信号,包括:通过位于所述CODEC层的数字信号处理装置对所述第二声音信号进行混响处理,生成具有混响效果的所述第三声音信号。
结合第一方面及其上述实现方式,在其第三种实现方式中,所述对所述第三声音信号和从应用层下发的背景声音信号进行数字混音处理,生成数字的第四声音信号,包括:通过位于所述系统底层的数字混音装置对所述第三声音信号和所述背景声音信号进行叠加,生成所述第四声音信号,其中所述背景声音信号为数字信号。
结合第一方面及其上述实现方式,在其第四种实现方式中,所述对所述第一声音信号和所述第五声音信号进行模拟混音处理生成模拟的第六声音信号,包括:通过位于所述CODEC层的模拟混音装置对所述第一声音信号和所述第五声音信号进行叠加,生成所述第六声音信号。
结合第一方面及其上述实现方式,在其第五种实现方式中,所述通过声音采集装置获取模拟的第一声音信号之后,还包括:将获取到的所述第一声音信号通过所述CODEC层的侧音通路发送给位于所述CODEC层的所述模拟混音装置。
第二方面,提供了一种终端设备,包括:声音采集装置、模数转换装置、混响装置、数字混音装置、数模转换装置、模拟混音装置和声音播放装置,所述声音采集装置、声音播放装置、模数转换装置、数模转换装置和模拟混音装置位于编解码CODEC层,所述混响装置和数字混音装置位于系统底层,其中所述系统底层包含框架层、硬件抽象层、驱动层和所述CODEC层中的至少一种,所述声音采集装置通过侧音通路与所述模拟混音装置相连接;所述声音采集装置,用于获取模拟的第一声音信号;所述模数转换装置,用于对所述第一声音信号进行模数转换生成数字的第二声音信号;所述混响装置,用于在系统底层对所述第二声音信号进行混响处理生成数字的第三声音信号;所述数字混音装置,用于对所述第三声音信号和从应用层下发的背景声音信号进行数字混音处理,生成数字的第四声音信号;所述数模转换装置,用于对所述第四声音信号进行数模转换生成模拟的第五声音信号;所述模拟混音装置,用于对所述第一声音信号和所述第五声音信号进行模拟混音处理生成模拟的第六声音信号;所述声音播放装置,用于播放所述第六声音信号。
结合第二方面,在其第一种实现方式中,所述混响装置位于所述框架层、硬件抽象层、驱动层中的至少一层时,所述混响装置具体用于:通过所述录音通路接收所述模数转换装置发送的所述第二声音信号;对所述第二声音信号进行混响处理,生成具有混响效果的所述第三声音信号;向所述数字混音装置发送所述第三声音信号。
结合第二方面及其上述实现方式,在其第二种实现方式中,所述终端还包括数字信号处理装置,所述混响装置位于所述CODEC层时,所述混响装置具体用于:接收所述模数转换装置发送的所述第二声音信号;通过位于所述CODEC层的所述数字信号处理装置对所述第二声音信号进行混响处理,生成具有混响效果的所述第三声音信号;向所述数字混音装置发送所述第三声音信号。
结合第二方面及其上述实现方式,在其第三种实现方式中,所述数字混音装置具体用于:接收所述混响装置发送的所述第三声音信号,并且接收应用层发送的所述背景声音信号;对所述第三声音信号和所述背景声音信号进行叠加,生成所述第四声音信号,其中所述背景声音信号为数字信号;向所述数模转换装置发送所述第四声音信号。
结合第二方面及其上述实现方式,在其第四种实现方式中,所述模拟混音装置具体用于:对所述第一声音信号和所述第五声音信号进行叠加,生成所述第六声音信号。
结合第二方面及其上述实现方式,在其第五种实现方式中,所述声音获取装置还用于:将获取到的所述第一声音信号通过所述侧音通路发送至所述模拟混音装置。
结合第二方面及其上述实现方式,在其第六种实现方式中,所述声音采集装置为麦克风,所述声音播放装置为扬声器,所述数模转换装置和所述模数转换装置为模数/数模转换器,所述混响装置、所述数字混音装置、和所述模拟混音装置为编解码芯片。
本发明实施例通过在系统底层对声音信号进行混响美化处理,能够减小经过美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出,并且,提高了用户体验。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的声音处理的方法的流程图。
图2是本发明一个实施例的声音处理的方法的流程图。
图3是本发明一个实施例的混响模型的示意图。
图4是本发明一个实施例的低通滤波器模型的示意图。
图5是本发明一个实施例的全通滤波器模型的示意图。
图6是本发明一个实施例的终端设备的示意框图。
图7是本发明另一实施例的终端设备的示意框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是本发明一个实施例的终端声音处理的方法的流程图。图1的方法可以由终端设备执行。
101,获取模拟的第一声音信号。
102,对第一声音信号进行模数转换生成数字的第二声音信号。
103,在系统底层对第二声音信号进行混响处理生成数字的第三声音信号,其中系统底层包含框架层、硬件抽象层、驱动层和编解码CODEC层中的至少一种。
104,对第三声音信号和从应用层下发的背景声音信号进行数字混音处理,生成数字的第四声音信号。
105,对第四声音信号进行数模转换生成模拟的第五声音信号。
106,对第一声音信号和第五声音信号进行模拟混音处理生成模拟的第六声音信号。
107,播放第六声音信号。
本发明实施例通过在系统底层对声音信号进行混响美化处理,能够减小经过美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出,并且,提高了用户体验。
应理解,本发明实施例的终端设备可以为手持移动终端,例如移动电话、平板电脑等。也可以是便携式、袖珍式、手持式、计算机内置的或者车载的终端设备等,本发明对此并不限定。
本发明实施例的终端设备的系统可以按照逻辑结构划分为以下五层:应用层(Application Layer)、框架层(Framework Layer)、硬件抽象层(Hardware AbstractionLayer,HAL)、驱动层(Driver Layer)和编解码(Coder-Decoder Layer,CODEC)层,其中CODEC层属于硬件层。应用层以下的框架层、硬件抽象层、驱动层和CODEC层可以称为系统底层。
可选地,作为一个实施例,在系统底层包含框架层、硬件抽象层、驱动层中的至少一种时,步骤103可以包括:通过录音通路将第二声音信号发送给位于系统底层的混响装置;通过混响装置对第二声音信号进行混响处理,生成具有混响效果的第三声音信号。
也就是说,在框架层、硬件抽象层、驱动层中的任意一层或多层进行对模数转换产生的第二声音信号进行混响处理时,该第二声音信号可以通过录音通路被发送给混响装置。其中,录音通路可以直通应用层。该混响装置可以是用于美化声音的一种算法模块(混响算法模型),该混响算法模型主要用于为输入的声音信号增加混响效果、均衡器音效等。具体地,混响算法模型可以为多级延时混响算法模型、梳状滤波混响算法模型、施罗德Schroeder混响算法模型、穆勒Moorer混响算法模型中的一种或多种的组合。较为常用的一种混响算法模型可以由多个低通滤波器模块并联,并与多个全通滤波器模块串联组成。多个低通滤波器模块的延迟可以不同,以达到回响效果。
可选地,在进行步骤103时,第二声音信号还可以同时通过录音通路传送给应用层;可选地,在步骤103之后,还可以将第三声音信号通过录音通路传送给应用层,以便于具体的应用程序对用户的声音信号进行处理并保存,以供用户进行后续操作,例如回放、发布等。
可选地,作为一个实施例,在系统底层为CODEC层时,步骤103可以包括:通过位于CODEC层的数字信号处理装置对第二声音信号进行混响处理,生成具有混响效果的第三声音信号。
也就是说,如果在编解码层对模数转换产生的第二声音信号进行混响处理,可以将第二声音信号发送给位于CODEC内部的数字信号处理(Digital Signal Processing,DSP)装置进行混响处理,具体地,CODEC内部DSP装置的混响处理方法和模型与上述框架层、硬件抽象层或驱动层中的处理方法相类似,此处不再赘述。
可选地,作为一个实施例,步骤104可以包括:通过位于系统底层的数字混音装置对第三声音信号和背景声音信号进行叠加,生成第四声音信号,其中背景声音信号可以为数字信号。
也就是说,在框架层、硬件抽象层、驱动层中的任意一层或多层进行对模数转换产生的第二声音信号进行混响处理之后,可以将产生的第三声音信号发送给同样位于框架层、硬件抽象层、驱动层中的任意一层或多层的数字混音装置,与此同时,该数字混音装置还可以接收来自于应用层的“K歌”应用的背景声音信号,例如伴奏音乐。将第三声音信号和背景声音信号这两路信号直接相加,或者将增益后的两路信号相加,也可以对这两路信号采用其他混音处理算法进行叠加,本发明对此并不限定。之后可以将混音叠加产生的第四声音信号发送给数模转换装置。
可选地,作为一个实施例,步骤101之后还可以包括:将获取到的第一声音信号通过CODEC层的侧音通路发送给位于CODEC层的模拟混音装置。其中侧音通路可以是连通声音采集装置端和声音播放装置端的一个模拟通道,第一声音信号经过该模拟通道回环可以直接到达声音播放装置端的模拟混音装置,延迟几乎为零(小于5ms)。可选地,还可以在回环过程中调整第一声音信号的增益。
可选地,作为一个实施例,步骤106可以包括:通过位于CODEC层的模拟混音装置对第一声音信号和第五声音信号进行叠加,生成第六声音信号。
具体地,模拟混音装置可以将第五声音信号和第一声音信号这两路信号直接相加,或者将增益后的两路信号相加,也可以对这两路信号采用其他混音处理算法进行叠加以产生第六声音信号,本发明对此并不限定。产生的第六声音信号可以通过扬声器输出。
本发明实施例通过将声音信号分两路进行处理,一路经过模拟通道回环,以几乎为零的延迟送达输出端,另一路通过系统底层的混响美化处理后与背景声音信号一同送达输出端,之后对两路信号进行混音输出,从而能够减小美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出,并且,提高了用户体验。
图2是本发明一个实施例的声音处理的方法的流程图。图2的方法可以由终端设备执行,终端设备可以为手持移动终端,例如移动电话、平板电脑等。也可以为便携式、袖珍式、手持式、计算机内置的或者车载的终端设备等,本发明对此并不限定。
201,声音输入
通过声音采集装置(例如麦克风)采集用户演唱的声音,生成模拟的第一声音信号。具体地,可以在背景声音信号(例如伴奏音乐)播放的同时采集用户演唱的声音。
202a,直达声
在模拟的第一声音信号产生后,可以通过音频编解码器(CODEC)的侧音通路发送给输出端。这一路声音信号可以称为“直达声”,“直达声”相对于用户输入的声音几乎无延迟、无美化效果,也就是说第一声音信号经过侧音通路后在频谱上没有发生变化,相位几乎没有变化,幅度可以根据设置而变化。“直达声”公式如下所示:
SD=GD*S(t-τD)
其中SD表示直达声,GD表示直达声增益,τD表示直达声延时(小于5ms),S表示原始信号,即第一声音信号。因为SD相对于S在频谱上没有变化,可以认为SD仍为第一声音信号。
202b,模数转换
在模拟的第一声音信号产生后,除了经过202a的“直达声”,第一声音信号还被发送给模数转换装置,以生成数字的第二声音信号,以便于进行下一步的信号处理。
203,混响处理
第二声音信号被发送给混响装置进行混响美化处理,以生成“美化声”。混响装置可以位于框架层、硬件抽象层HAL、驱动层和编解码层中的任意一层或多层。例如,当混响装置位于HAL时,第二声音信号可以通过录音通路发送给HAL层的混响装置进行混响美化处理。
具体地,混响装置可以是用于“声音美化”的一种算法模块(混响算法模型),也就是说,位于HAL层的混响装置属于软件逻辑装置,实际的运算和处理由硬件层执行。该混响算法模型主要用于为输入的声音信号增加混响效果、均衡器音效等。具体地,混响算法模型可以为多级延时混响算法模型、梳状滤波混响算法模型、施罗德Schroeder混响算法模型、穆勒Moorer混响算法模型中的一种或多种的组合。作为一个例子,图3示出了一种混响装置300的结构示意图,如图3所示该混响装置300可以由多个低通滤波器模块301并联,并与多个全通滤波器模块302串联组成。其中多个低通滤波器模块的延迟可以不同,以达到回响效果。
更具体地,图3中的低通滤波器模块301中的任意一个滤波器模块的结构示意图可以如图4所示。低通滤波器模块301的传输函数H(z)可以为:
其中,X(z)为输出信号,Y(z)为输出信号,g为增益,Z-n为n个单元的延时,一个单元的延迟可以为一次采样的时间。
第二声音信号经过低通滤波器模块301,会产生Z-n的延迟,而多路第二声音信号经过多个并联的不同延迟的低通滤波器后,经过叠加则会生成相对原声音信号具有“多重回响”效果的声音信号。
更具体地,图3中的全通滤波器模块302中的任意一个滤波器模块的结构示意图可以如图5所示。全通滤波器模块302的传输函数H(z)可以为:
其中,g为增益,Z-D为D个单元的延迟。经过低通滤波器模型301的第二声音信号可以通过多个串联的全通滤波器模块302进行进一步的“美化处理”,生成第三声音信号。
此外,如果混响装置位于CODEC层,则模数转换产生的第二声音信号可以发送给位于CODEC的数字信号处理器DSP,该数字信号处理器能够对第二声音信号进行类似于上述HAL中混响装置的“美化处理”。该CODEC内部的DSP还具有通话降噪、编解码、录音及录音美化等处理功能。
应理解,由于录音通路可以直达应用层,然而信号或指令穿越系统各层时由于系统的不稳定性会造成较大的延迟,如果信号通过录音通路到达应用层并返回硬件层,则延迟很有可能会大于100ms,这一延迟对于用户来说是“可辨识”的,也就是说用户会明显感受到返回声音的相对于用户发出声音的延迟,从而失去“K歌”的感觉,降低用户体验。然而本发明实施例用于美化处理的混响装置位于应用层之下,则大大减少了声音信号处理过程中往返穿越的系统层的数量,可以将延迟降低到50ms以下,此时用户感受到的是“回响”而不是延迟。
作为一个可选的步骤,在第二声音信号通过系统底层的混响装置进行混响处理时,第二声音信号可以同时通过录音通路传送给应用层,以便于具体的应用程序对该第二声音信号进行处理并保存,以供用户进行后续操作,例如回放、发布等。
类似地,作为另一个可选的步骤,第二声音信号经过步骤203混响处理生成第三声音信号后,还可以将第三声音信号通过录音通路传送给应用层,以便于具体的应用程序对该第二声音信号进行处理并保存,以供用户进行后续操作,例如回放、发布等。
204,数字混音处理
与混响装置相类似,数字混音装置也可以位于框架层、硬件抽象层HAL、驱动层和编解码层中的任意一层或多层。以HAL为例,数字混音装置接收混响装置发送的第三声音信号,于此同时,数字混音装置来接收来自于应用层的背景声音信号(例如伴奏音乐),数字混音装置对这两路数字信号进行线性或非线性叠加处理之后生成带有“美化声”和“伴奏”的第四声音信号。其中,叠加可以是将两路信号直接相加,或者将增益后的两路信号相加,也可以对这两路信号采用其他混音处理算法进行叠加,本发明对此并不限定。
与混响装置相类似,数字混音装置同样属于软件逻辑装置,而实际的运算和处理由硬件层执行。
205,数模转换
第四声音信号被发送给数模转换装置,以生成模拟的第五声音信号,将第五声音信号发送给模拟混音装置以便进行下一步处理。
206,模拟混音处理
模拟混音装置接收步骤202a的第一声音信号,同时接收步骤205的第五声音信号,对这两路信号进行线性或非线性叠加,生成第六声音信号。其中,叠加可以是将两路信号直接相加,或者将增益后的两路信号相加,也可以对这两路信号采用其他混音处理算法进行叠加,本发明对此并不限定。
207,声音输出
第六声音信号可以通过声音播放装置进行播放,使得用户能够听到“直达声”、“美化声”和“伴奏”,并且由于“美化声”延迟小于50ms,所以用户无法感受到延迟,仅能感受到自己演唱声音的回响。
本发明实施例通过将声音信号分两路进行处理,一路经过模拟通道回环,以几乎为零的延迟送达输出端,另一路通过系统底层的混响美化处理后与背景声音信号一同送给输出端,之后对两路信号进行混音输出,从而能够减小美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出,并且,提高了用户体验。
图6是本发明一个实施例的声音处理终端的示意框图。图6所示的声音处理终端600包括声音采集装置601、模数转换装置602、混响装置603、数字混音装置604、数模转换装置605、模拟混音装置606和声音播放装置607,其中,声音采集装置601、声音播放装置607、模数转换装置602、数模转换装置605和模拟混音装置606位于编解码CODEC层,混响装置603和数字混音装置604位于系统底层,其中系统底层包含框架层、硬件抽象层、驱动层和CODEC层中的至少一种,声音采集装置601通过侧音通路与模拟混音装置606相连接;
声音采集装置601获取模拟的第一声音信号。模数转换装置602对第一声音信号进行模数转换生成数字的第二声音信号。混响装置603在系统底层对第二声音信号进行混响处理生成数字的第三声音信号。数字混音装置604对第三声音信号和从应用层下发的背景声音信号进行数字混音处理,生成数字的第四声音信号。数模转换装置605对第四声音信号进行数模转换生成模拟的第五声音信号。模拟混音装置606对第一声音信号和第五声音信号进行模拟混音处理生成模拟的第六声音信号。声音播放装置607播放第六声音信号。
本发明实施例通过在系统底层对声音信号进行混响美化处理,能够减小经过美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出,并且,提高了用户体验。
应理解,本发明实施例的终端设备可以为手持移动终端,例如移动电话、平板电脑等。也可以是便携式、袖珍式、手持式、计算机内置的或者车载的终端设备等,本发明对此并不限定。
本发明实施例的终端设备的系统可以按照逻辑结构划分为以下五层:应用层、框架层、硬件抽象层HAL、驱动层和CODEC层,其中CODEC层属于硬件层。应用层以下的框架层、硬件抽象层、驱动层和CODEC层可以称为系统底层。
可选地,作为一个实施例,在混响装置603位于框架层、硬件抽象层、驱动层中的至少一层时,混响装置603具体用于:通过录音通路接收模数转换装置602发送的第二声音信号;对第二声音信号进行混响处理,生成具有混响效果的第三声音信号;向数字混音装置604发送第三声音信号。
也就是说,在框架层、硬件抽象层、驱动层中的任意一层或多层进行对模数转换产生的第二声音信号进行混响处理时,该第二声音信号可以通过录音通路被发送给混响装置。其中,录音通路可以直通应用层。该混响装置可以是用于美化声音的一种算法模块(混响算法模型),该混响算法模型主要用于为输入的声音信号增加混响效果、均衡器音效等。具体地,混响算法模型可以为多级延时混响算法模型、梳状滤波混响算法模型、施罗德Schroeder混响算法模型、穆勒Moorer混响算法模型中的一种或多种的组合。较为常用的一种混响算法模型可以由多个低通滤波器模块并联,并与多个全通滤波器模块串联组成。多个低通滤波器模块的延迟可以不同,以达到回响效果。
可选地,作为一个实施例,声音处理终端600还包括数字信号处理装置,在混响装置603位于CODEC层时,混响装置603具体用于:接收模数转换装置602发送的第二声音信号;通过位于CODEC层的数字信号处理装置对第二声音信号进行低通滤波和全通滤波,生成具有混响效果的第三声音信号;向数字混音装置604发送第三声音信号。
也就是说,如果在CODEC层对模数转换产生的第二声音信号进行混响处理,可以将第二声音信号发送给位于CODEC内部的数字信号处理(Digital Signal Processing,DSP)装置进行混响处理,具体地,CODEC内部DSP装置的混响处理方法和模型与上述框架层、硬件抽象层或驱动层中的处理方法相类似,此处不再赘述。
可选地,作为一个实施例,数字混音装置604具体用于:接收混响装置603发送的第三声音信号,并且接收应用层发送的背景声音信号;对第三声音信号和背景声音信号进行叠加,生成第四声音信号,其中背景声音信号为数字信号;向数模转换装置605发送第四声音信号。
也就是说,在框架层、硬件抽象层、驱动层中的任意一层或多层进行对模数转换产生的第二声音信号进行混响处理之后,可以将产生的第三声音信号发送至同样位于框架层、硬件抽象层、驱动层中的任意一层或多层的数字混音装置604,与此同时,该数字混音装置604还可以接收来自于应用层的“K歌”应用的背景声音信号,例如伴奏音乐。将第三声音信号和背景声音信号这两路信号直接相加,或者将增益后的两路信号相加,也可以对这两路信号采用其他混音处理算法进行叠加,本发明对此并不限定。之后可以将混音叠加产生的第四声音信号发送给数模转换装置605。
可选地,作为一个实施例,声音获取装置601还用于:将获取到的第一声音信号通过侧音通路发送至模拟混音装置606。其中侧音通路可以是连通声音采集装置端和声音播放装置端的一个模拟通道,第一声音信号经过该模拟通道回环可以直接到达声音播放装置端的模拟混音装置,延迟几乎为零(小于5ms)。可选地,还可以在回环过程中调整第一声音信号的增益。
可选地,作为一个实施例,模拟混音装置606具体用于:对第一声音信号和第五声音信号进行叠加,生成第六声音信号。
具体地,第四声音信号经过数模转换生成模拟的第五声音信号,以及经过侧音通路发送给模拟混音装置的第一声音信号,将第五声音信号和第一声音信号这两路信号直接相加,或者将增益后的两路信号相加,也可以对这两路信号采用其他混音处理算法进行叠加以产生第六声音信号,本发明对此并不限定。产生的第六声音信号可以通过扬声器进行输出。
可以理解的是,本发明实施例中的模数转换装置602和数模转换装置605可以集成到一起,成为模数/数模转换装置。
本发明实施例通过将声音信号分两路进行处理,一路经过模拟通道回环,以几乎为零的延迟送达输出端,另一路通过系统底层的混响美化处理后与背景声音信号一同送达输出端,之后对两路信号进行混音输出,从而能够减小美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出,提高了用户体验。
图7是本发明另一实施例的终端设备的示意框图。图7的终端设备700包括麦克风701、处理器703和扬声器704。
麦克风701用于获取模拟的第一声音信号。
处理器703,用于对第一声音信号进行模数转换生成数字的第二声音信号;在系统底层对第二声音信号进行混响处理生成数字的第三声音信号;对第三声音信号和从应用层下发的背景声音信号进行数字混音处理,生成数字的第四声音信号;对第四声音信号进行数模转换生成模拟的第五声音信号;对第一声音信号和第五声音信号进行模拟混音处理生成模拟的第六声音信号。
扬声器704用于播放第六声音信号。
本发明实施例通过在系统底层对声音信号进行混响美化处理,能够减小经过美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出,并且,提高了用户体验。
其中,该终端设备还可以包括存储器702,存储器702可以存储使得处理器703执行操作的指令。应理解,本发明实施例的终端设备可以为手持移动终端,例如移动电话、平板电脑等。也可以是便携式、袖珍式、手持式、计算机内置的或者车载的终端设备等,本发明实施例对此并不限定。
本发明实施例的终端设备的系统可以按照逻辑结构划分为以下五层:应用层、框架层、硬件抽象层HAL、驱动层和CODEC层,其中CODEC层属于硬件层。应用层以下的框架层、硬件抽象层、驱动层和CODEC层可以称为系统底层。
应理解,处理器703可以位于硬件层,上述在系统底层对声音信号进行处理的过程可以是由位于硬件层的处理器703执行的,而其逻辑进程或线程位于系统底层,该进程或线程的优先级较高,受到系统不稳定因素和延迟的影响较小,处理速度和响应速度较快。
可选地,作为一个实施例,处理器703可以包括编解码CODEC芯片705和数模/模数转换器706,CODEC芯片705具体用于:通过录音通路接收数模/模数转换器706转换的第二声音信号;对第二声音信号进行混响处理,生成具有混响效果的第三声音信号。
可选地,作为一个实施例,处理器703可以包括数模/模数转换器706和编解码CODEC芯片705,CODEC芯片705具体用于:接收数模/模数转换器706转换的第二声音信号;对第二声音信号进行低通滤波和全通滤波,生成具有混响效果的第三声音信号。
可选地,作为一个实施例,处理器703可以包括数模/模数转换器706和编解码CODEC芯片705:CODEC芯片705具体用于:接收应用层发送的背景声音信号;对第三声音信号和背景声音信号进行叠加,生成第四声音信号,其中背景声音信号为数字信号;向数模/模数转换器706发送第四声音信号,由数模/模数转换器706把数字第四声音信号转换为第五声音信号。
可选地,作为一个实施例,麦克风701还用于:将获取到的第一声音信号通过侧音通路发送给处理器703。其中侧音通路可以是处理器701连通麦克风701和扬声器704的一个模拟通道,第一声音信号经过该模拟通道回环可以直接到达编解码CODEC芯片705,延迟几乎为零(小于5ms)。可选地,还可以在回环过程中调整第一声音信号的增益。
可选地,作为一个实施例,处理器703具体用于:对第一声音信号和第五声音信号进行叠加,生成第六声音信号。
本发明实施例的终端设备700通过将声音信号分两路进行处理,一路经过模拟通道回环,以几乎为零的延迟送达输出端,另一路通过系统底层的混响美化处理后与背景声音信号一同送达输出端,之后对两路信号进行混音输出,从而能够减小美化处理的声音的延迟,实现声音的实时输入、实时美化并实时输出,提高了用户体验。
需要说明的是,本发明实施例中的处理器703包括编解码CODEC芯片705和数模/模数转换器706,该编解码CODEC芯片705和数模/模数转换器706可以分开设置,也可以集成到一起,本发明实施例对此并不限制。
上述本发明实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。