发明内容
有鉴于此,本发明提供一种音频信号处理方法、装置和集成电路,以避免出现削峰失真。
根据本发明的第一方面,提供一种音频信号处理方法,包括:
预测输入音频信号经过当前传递函数处理后获得的输出音频信号的幅值;以及
根据预测的幅值调整对输入音频信号的处理增益,获取输出音频信号;
其中,在预测的幅值小于等于上限阈值时,根据所述传递函数的增益处理输入音频信号,在预测的幅值大于所述上限阈值时,调整对输入音频信号的处理增益以使得输出音频信号的幅值小于等于所述上限阈值。
优选地,预测输入音频信号经过当前传递函数处理后获得的输出音频信号的幅值包括:
根据第一处理函数处理所述输入音频信号输出第一处理信号;以及
获取所述第一处理信号的幅值;
其中,所述第一处理函数被设置为保证第一处理信号的幅值小于处理阈值,所述处理阈值表征数据处理的最大范围。
优选地,所述第一处理函数满足:
其中,H1为所述第一处理函数,H(z)为所述传递函数,G为所述传递函数的增益。
优选地,在G≥1且时,或者,在G<1且Lin>TH时,判定预测的幅值大于所述上限阈值;
其中,Lin为所述第一处理信号的幅值,TH为所述上限阈值。
优选地,根据预测的幅值调整对输入音频信号的处理增益包括:
根据第二处理函数处理所述第一处理信号,以获得所述输出音频信号;
其中,所述第二处理函数满足:
其中,H2为所述第二处理函数。
根据本发明的第二方面,提供一种音频信号处理装置,包括:
预测单元,用于预测输入音频信号经过当前传递函数处理后获得的输出音频信号的幅值;以及
增益调节单元,用于根据预测的幅值调整对输入音频信号的处理增益,获取输出音频信号;
其中,在预测的幅值小于等于上限阈值时,所述增益调节单元根据所述传递函数的增益处理输入音频信号,在预测的幅值大于所述上限阈值时,所述增益调节单元调整对输入音频信号的处理增益以使得输出音频信号的幅值小于等于所述上限阈值。
优选地,预测单元包括:
第一处理单元,用于根据第一处理函数处理所述输入音频信号输出第一处理信号;以及
幅值获取单元,用于获取所述第一处理信号的幅值;
其中,其中,所述第一处理函数被设置为保证第一处理信号的幅值小于处理阈值,所述处理阈值表征数据处理的最大范围。
优选地,所述第一处理函数满足:
其中,H1为所述第一处理函数,H(z)为所述传递函数,G为所述传递函数的增益。
优选地,所述增益调节单元在G≥1且时,或者,在G<1且Lin>TH时,判定预测的幅值大于所述上限阈值;
其中,Lin为所述第一处理信号的幅值,TH为所述上限阈值。
优选地,所述增益调节单元根据第二处理函数处理所述第一处理信号,以获得输出音频信号;其中,所述第二处理函数满足:
其中,H2为所述第二处理函数。
根据本发明的第三方面,提供一种计算机可读介质,用于存储可执行程序指令,其特征在于,所述可执行程序指令被执行时实现如第一方面所述的方法。
根据本发明的第四方面,提供一种集成电路,包括如第二方面所述的音频处理装置。
通过对基于当前传递函数处理后的输出音频信号的幅值进行预测,进而在预测的幅值低于上限阈值时基于当前传递函数进行处理,而在预测的幅值高于上限阈值时调节对输入音频信号的处理增益,使得对应的输出音频信号的幅值等于上限阈值,从而可以有效地避免削峰失真。本发明的音频处理方法步骤少,数据处理简单,易于实现。
具体实施方式
以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
图2是本发明实施例的音频处理方法的示意图。如图2所示,所述方法包括:
步骤S100、预测输入音频信号X经过当前传递函数H(z)处理后获得的输出音频信号Y的幅值。
参数均衡器可以等效为一个线性或非线性的系统,其对于输入音频信号的处理可以在频域或复频域等效为在输入音频信号上乘以对应的传递函数H(z)。其中,当前传递函数H(z)为用户根据需要设置的传递函数。
步骤S200、根据预测的幅值调整对输入音频信号的处理增益,获取输出音频信号Y。
其中,在预测的幅值小于等于上限阈值时,根据当前传递函数H(z)的增益处理输入音频信号。在预测的幅值大于所述上限阈值时,调整对输入音频信号的处理增益以使得输出音频信号的幅值等于所述上限阈值TH。
在本实施例中,所述上限阈值可以为参数均衡器的物理极限值,也可以是用户设置的阈值。
由此,对于输入的音频信号根据预测的幅值区别对待,在避免出现削峰失真的同时,最小化对于输出音频信号特性的影响。
具体地,对于输出音频信号的幅值的预测可以通过如下方式来实现,也即,步骤S100包括:
步骤S110、根据第一处理函数H1处理输入音频信号X输出第一处理信号Y1。
其中,所述第一处理函数H1满足:
其中,H1为所述第一处理函数,H(z)为所述传递函数,G为传递函数H(z)的增益。
可选地,第一处理函数也可以设置为其它形式,只要保证获取到的第一处理信号Y1的幅值小于处理阈值即可。其中,处理阈值用于表征在内部数据处理的最大范围内。这使得后续可以对其进行处理。同时,第一处理信号Y1的幅值与预期的输出音频信号的幅值相关联即可。在本实施例中,处理阈值可以大于所述上线阈值。
步骤S120、获取第一处理信号Y1的幅值Lin。
根据第一处理函数H1的定义可知,其增益小于1。因此,在输入音频信号X不失真的前提下,经过第一处理函数H1处理输出第一处理信号Y1的波形也不会出现失真。同时,在增益G大于等于1时,第一处理信号Y1=X*H(z)/G的幅值Lin与期望的输出音频信号Y’=X*H(z)的幅值成比例,因此,可以通过第一处理信号Y1的幅值是否超过TH/G判断期望的输出音频信号Y’的幅值是否会超过上限阈值TH。在增益G小于1时,第一处理信号Y1=X*H(z)的幅值Lin就是期望的输出音频信号Y’=X*H(z)的幅值,因此,可以通过幅值Lin是否超过TH判断期望的输出音频信号Y’的幅值是否会超过上限阈值TH。由此,第一处理信号Y1的幅值Lin可以作为对于输入音频信号X经过当前的传递函数H(z)处理后获得的输出音频信号Y的幅值的预测。
通过上述方式来进行输出音频信号Y的幅值的预测,一方面可以避免可能出现的削峰失真对于预测的影响,另一方面,在预测过程中生成的第一处理信号Y1可以后续用于输出音频信号的生成,由此,使得步骤S100中进行幅值预测的计算结果可以被复用,降低整个方法的计算复杂度,提高效率。
应理解,本领域技术人员也可以采用其它的方式来对输出音频信号的幅值进行预测。
对于步骤S200,在本实施例中,基于步骤S100生成的第一处理信号Y1及其幅值Lin来调节对于输入音频信号的处理增益。步骤S200可以具体包括:根据第二处理函数H2处理第一处理信号Y1,以获得输出音频信号;其中,所述第二处理函数满足:
其中,H2为所述第二处理函数。
也就是说,在本步骤中,将增益G和第一处理信号Y1的幅值Lin作为判断条件,对于满足不同条件的情况采用不同的增益来处理第一处理信号Y1。由此,可以自适应地调节参数均衡器的增益,从而避免出现削峰失真。
具体地,在当前的传递函数H(z)的增益G小于1时,如上所述,可以根据幅值Lin是否超过TH判断期望的输出音频信号Y’的幅值是否会超过上限阈值TH。如果未超过,也即,Lin≤TH,则不必调节增益,因此,第二处理函数H2=1。如果超过,也即,Lin>TH,则不能直接按传递函数H(z)的增益来处理,而需要对第一处理信号Y1乘TH/Lin,这使得相乘后获得的输出音频信号Y的幅值等于上限阈值TH。由此,可以保证输出音频信号不出现削峰失真。
可选地,也可以调节第二处理函数H2的增益,使得输出音频信号Y的幅值等于一个略小于上限阈值的预定值。
在当前的传递函数H(z)的增益大于等于1时,如上所述,可以根据幅值Lin是否超过TH/G判断期望的输出音频信号Y’的幅值是否会超过上限阈值TH。如果未超过,也即,则不必调节增益,因此,将在第一处理函数H1中除去的增益G重新与第一处理信号Y1相乘,使得输出音频信号满足Y=X*H(z)。如果超过,也即,则需要调整增益,以使得输出音频信号的幅值等于上限阈值TH。具体地,在本实施例中,对第一处理信号Y1乘TH/Lin,这使得相乘后获得的输出音频信号Y的幅值等于上限阈值TH。由此,可以保证输出音频信号不出现削峰失真。
图3本发明实施例的音频处理方法的数据流图。如图3所示,经过第一处理函数H1和第二处理函数H2的处理后,最终的输出音频信号Y和输入音频信号X的比值满足:
也即,本实施例的参数均衡器的实际传递函数为上述分段函数。
图4是本发明实施例的波形示意图。如图4所示,以输入音频信号为正弦波,根据三个不同的当前传递函数H1(z)-H3(z)将其处理为三个具有不同幅度的波形w1-w3。而经由本实施例处理获得的波形为w1’-w3’。根据图4可知,如果直接根据传递函数H(z)来进行处理,波形w2和w3均会超过上限阈值,这会导致实际输出的输出波形Y’出现削波失真。而根据本实施例的方法来对输入音频信号X进行处理,则可以预测到直接处理获得的波形w2和w3会出现削波失真,调整对输入信号的处理增益使得对应的输出音频信号的幅值保持为等于上限阈值或小于上限阈值。
图5是本发明实施例的音频处理装置的示意图。如图5所示,本实施例的音频信号处理装置包括预测单元51和增益调节单元52。其中,预测单元51用于预测输入音频信号X经过预定的传递函数H(z)处理后获得的输出音频信号的幅值。增益调节单元52用于根据预测的幅值调整对输入音频信号的处理增益,获取输出音频信号Y。其中,在预测的幅值小于等于上限阈值TH时,所述增益调节单元52根据所述传递函数的增益处理输入音频信号,在预测的幅值大于所述上限阈值TH时,所述增益调节单元52调整对输入音频信号的处理增益以使得输出音频信号的幅值小于等于所述上限阈值TH。
具体地,预测单元51包括第一处理单元51a和幅值获取单元51b。其中,第一处理单元51a用于根据第一处理函数H1处理输入音频信号X输出第一处理信号Y1。其中,所述第一处理函数H1满足:
其中,H1为所述第一处理函数,H(z)为所述传递函数,G为所述传递函数的增益。
幅值获取单元51b用于获取第一处理信号Y1的幅值Lin。
同时,增益调节单元52在G≥1且时,或者,在G<1且Lin>TH时,判定预测的幅值大于上限阈值TH。
优选地,增益调节单元52根据第二处理函数H2处理所述第一处理信号Y1,以获得输出音频信号Y。
其中,所述第二处理函数H2满足:
其中,H2为所述第二处理函数。
通过对基于当前传递函数处理后的输出音频信号的幅值进行预测,进而在预测的幅值低于上限阈值时基于当前传递函数进行处理,而在预测的幅值高于上限阈值时调节对输入音频信号的处理增益,使得对应的输出音频信号的幅值等于上限阈值,从而可以有效地避免削峰失真。本发明的音频处理方法步骤少,数据处理简单,易于实现。
以上具体实施方式中描述的数据结构和代码通常存储在计算机可读存储介质上,其可以是能够存储供计算机系统使用的代码和/或数据的任何设备或介质。计算机可读存储介质包括但不限于易失性存储器、非易失性存储器、磁性和光学存储设备,例如磁盘驱动器、磁带、CD(光盘)、DVD(数字多功能光盘或数字视频光盘)、或现在已知或以后开发的能够存储代码和/或数据的其他介质。
可以将具体实施方式部分描述的方法和过程具体化为代码和/或数据,该代码和/或数据可存储在如上所述的计算机可读存储介质中。当计算机系统读取并执行计算机可读存储介质上存储的代码和/或数据时,计算机系统执行具体化为数据结构和代码并存储于计算机可读存储介质内的方法和过程。
此外,可以将本文描述的方法和过程包括在硬件模块或装置中。这些硬件模块或装置可以包括但不限于专用集成电路(ASIC)芯片、现场可编程门阵列(FPGA)、在特定时间执行特定软件模块或一段代码的专用或共享处理器和/或其他现在已知或以后开发的可编程逻辑设备。当激活硬件模块或装置时,它们执行包括在其中的方法和过程。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。