一种数字音频均衡器的实现方法
- 格式:pdf
- 大小:704.05 KB
- 文档页数:7
一种数字音频均衡器的实现方法瞿军武(无锡中感微电子股份有限公司,江苏无锡,214135)摘要:音频均衡器在音频系统中不但可以调节音色,而且可以用来改善功放和音箱的频率响应。
初期的均衡器都是基于模拟信号的,随着数字信号处理技术的发展和普及,该技术已日益广泛地应用到了音频技术领域。
目前,数字均衡技术主要应用于计算机音频处理、媒体播放器及专业音响设备等。
本文通过MAT L AB工具设计了一种数字音频均衡器,该均衡器设计新颖,使用灵活。
并用Ve r i l og实现硬件,并在F PGA上测试了音频均衡器的效果。
关键词:数字音频均衡器;I I R滤波;MAT L AB;F PGAA Realization Method of Digital Audio EqualizerQU Jun-wu(Zgmicro co,.ltd,Wuxi214135,China)Abstract:Audio equalizer can not only adjust timbre in audio system,but also improve the frequency response of power amplifier and speaker.Initial equalizers are based on analog signals.With the development and popularization of digital signal processing technology,this technology has been increasingly widely applied to the field of audio tech-nology.At present,digital equalization technology is mainly used in computer audio processing,media player and professional audio equipment.This paper designs a digital audio equalizer by means of MATLAB.The equalizer is novel in design and flexible in use.The hardware is implemented with Verilog,and the effect of audio equalizer is tested on the FPGA.Key words:digital audio equalizer;IIR filter;MATLAB;FPGA图1二阶IIR 滤波器(Direct Form I )结构图引言随着数字音频技术的快速发展,人们对数字化音频电子产品的音质要求越来越高。
在声音的传输和播放中,由于设备或器件的原因,导致幅度对频率的响应会不一致,而达不到原有的听觉效果。
音频均衡器是音响设备中常用的一种音效处理技术,目的是对某一频段内的信号进行增强或衰减,以改善音频设备输出的频响特性,起到补偿和修饰各种声源的作用,从而提高听觉效果。
此外,模拟音频均衡器容易受到周围电磁环境和由于电路设计造成的内部电磁场干扰降低声音品质,而数字音频均衡器可以很好的克服这一缺陷。
本文提出了一种数字音频均衡器的实现方法[1]。
将可听声音范围(20Hz ~20KHz )分为n (n ≥1)个频率段,分别对每一段进行滤波处理。
使用一个高通IIR 滤波器和n-1个峰值IIR 滤波器(peak fil-ter ),并将这n 个滤波器串联起来。
高通滤波器首先滤除低频噪声和调节低频信号,n-1个峰值滤波器(peak filter )分别对对应的中心频率的声音信号进行增强或衰减处理。
通过调整峰值滤波器(peak filter )的中心频点、增益和品质因数Q 等值可以达到符合需求的音效效果(古典、爵士等音效)。
在可听声音范围(20Hz ~20KHz )内的频段分的越细,调节的峰值越尖锐,即Q 值(品质因数)越高,调节时补偿越细。
考虑到硬件成本和音频效果,本文给出了在可听声音范围分6段的设计。
本设计不但可以校正音频设备产生的频率失真还可以提高音响艺术的表现效果。
1数字均衡器算法实现[2]1.1IIR 滤波器参数[3]按照设计音效效果(古典、爵士等音效)和校正音频设备的需求,给出高通和峰值滤波器(peak filter )的中心频率(高通滤波为截止频率)、增益和品质因数Q 值。
1.2IIR 滤波器设计IIR 双二阶滤波器,其传递函数定义如下:H Z ()=b 0+b 1Z -1+b 2Z -2a 0+a 1Z -1+a 2Z-2(1)对传递函数(1)分子分母同时除以a 0得到函数H Z ()=b 0/a 0+b 1/a 0Z -1+b 2/a 0Z -21+a 1/a 0Z -1+a 2/a 0Z-2,通过这个传递函数可以得到图1二阶IIR 滤波器结构图。
参考图1,本设计使用“Direct Form I ”IIR 滤波器,通过对上面的传递函数进行一系列的化简处理得到如下差分公式:y[n]=b 0/a 0()*x[n]+b 1/a 0()*x[n-1]+b 2/a 0()*x[n-2]-a 1/a 0()*y[n-1]-a 2/a 0()*y[n-2](2)用MATLAB 工具,根据滤波器类型分别计算出:(b 0/a 0),(b 1/a 0),(b 2/a 0),(a 1/a 0)和(a 2/a 0)的值。
这5个值分别代表滤波器的5个系数,一旦滤波器确定后,只要计算这5个系数并代入式(2)就可以实现相应的滤波功能。
1.3滤波器系数计算使用MATLAB 的M 文件计算滤波器系数,不表1各滤波器参数表表35个峰值滤波器系数表同类型的滤波器系数计算是不一样的。
●高通滤波器系数计算b 0=(1+cos (w i ))/2b 1=-(1+cos (w i ))b 2=(1+cos (w i ))/2a 0=1+alpha a 1=-2*cos (w i )a 2=1-alpha其中w i =2*π*f i /f s ,w i 为截至角频率,f i 为截至频率,f s 为采样频率,本设计中采样频率为48KHz 。
Alpha =sin (w i )/(2*Q ),Q 为品质因数。
截至频率f i 和品质因数Q 可以在表1中获取。
M 文件高通滤波部分代码,其中的w 即为截至角频率,q 为品质因数。
%2-order high-pass filter alpha =sin (w )/(2*q );b_hp_w =[(1+cos (w ))/2-(1+cos (w ))(1+cos (w ))/2];a_hp_w =[(1+alpha )-2*cos (w )(1-alpha )];%normalize a0to be 1b_hp_w =b_hp_w ./a_hp_w (1);a_hp_w =a_hp_w ./a_hp_w (1);便于硬件实现,将计算出来的浮点数进行定点化处理。
考虑到精度,这里我们乘以2^28,也即左移28位,得到5个系数,具体参考表2。
●峰值滤波器系数计算b 0=1+alpha*A b 1=-2*cos (w i )b 2=1-alpha*A a 0=1+alpha/A a 1=-2*cos (w i )a 2=1-alpha/A 其中w i =2*π*f i /f s ,w i 为中心角频率,f i 为中心频率,不同的频段中心频率不一样,取决于客户所需要处理的频段,f s 为采样频率,本设计中为48KHz 。
Alpha 计算参考高通滤波系数部分。
A =10dBgain/40,其中dBgain 为增益值。
中心频率f i 和品质因数Q 以及增益dBgain 可以在表1中获取。
对应表中的值可以设计出5个峰值滤波器。
M 文件峰值滤波部分代码,其中的w 即为截至角频率,q 为品质因数。
%2-order peak filter alpha =sin (w )/(2*q );b0=1+alpha*A;b1=-2*cos (w );b2=1-alpha*A;a0=1+alpha/A;a1=-2*cos (w );a2=1-alpha/A;b_peak_w =[b0b1b2];a_peak_w =[a0a1a2];%normalize a0to be 1b_peak_w =b_peak_w ./a_peak_w (1);a_peak_w =a_peak_w ./a_peak_w (1);峰值滤波器系数处理方式和高通滤波器一样,具体系数参考表3。
表2高通滤波器系数表图3数字音频均衡器结构图图2数字均衡器6段滤波器频谱图参考图2,分别为数字均衡器6段对应的6个滤波器的幅频特性图。
其中滤波器1为高通滤波器,滤波器2~滤波器6为5个峰值滤波器。
1.4数字均衡整体算法实现使用MATLAB 的M 文件实现数字均衡整体算法,参考图3,将6个滤波器依次串联连接,第一个为高通滤波器(HIGH PASS filter )和5个峰值滤波器(PEAK Filter1~PEAK Filter5)。
将上面根据滤波器参数计算出来的系数(表2和表3)分别代入图3中的6组系数数组中(iir1_1_coef ~iir1_5_coef ,iir2_1_coef ~iir2_5_coef ,iir3_1_coef ~iir3_5_coef ,iir4_1_coef ~iir4_5_coef ,iir5_1_coef ~iir5_5_coef ,iir6_1_coef ~iir6_5_coef )。
参看图3,模拟音频信号经过ADC 数模转换器转换成数字信号PCM 音频数据,输入的pcm 音频信号为频率从20Hz ~20KHz 的正弦波双通道音频数据。
本文中用到的是16位音频数字信号(pcm _in ),经均衡处理后最终输出16位的音频数据(pcm_out )。
音频信号pcm_in 经高通滤波,对低频部分衰减(500Hz 以下)后,输出给峰值滤波器1,对中心频率为2KHz 的音频信号进行增强处理;接着输出给峰值滤波器2,对中心频率为4KHz 的音频信号进行衰减处理;再输出给峰值滤波器3,对中心频率为8KHz 的音频信号进行增强处理;然后输出给峰值滤波器4,对中心频率为12KHz 的音频信号进行衰减处理;最后输出给峰值滤波器5,对中心频率为16KHz 的音频信号进行增强处理。
最终生成均衡后的音频信号给播放器播放。
通过调整不同频段的增益,从而达到校正音频设备产生的频率失真和提高音响艺术的表现效果。