DSP

全面解析均衡效果器之一:EQ原理

2019-07-13 19:43发布

做音乐最离不开的效果器是什么?相信大多数朋友都会回答:是EQ!不错,正是有了这个所谓“均衡”的效果器,我们的音乐才不会过载,乐器音 {MOD}才会如此丰富。然而知道1加1等于2更要知道1加1为什么等于2。今天我把这个效果器扒光,从根本上来分析它的工作原理。

“EQ的原理??我知道我知道!!声波是由不同谐波组成的!所谓均衡处理就是改变这些谐波的振幅。”这个说法也对也不对。说它对是因为均衡效果器的初衷是这样的。说它不对,是因为以当今的数学算法,还不能做到由答案推出确定的问题。比如一道题的答案是10,我的问题可以是2+8,也可以是1+3+6,甚至可以是5.5+4.4+0.1等等等等……波形也是一样,同样的合成波形,可以有无数谐波组合。所以说,效果器根本不能分清楚这些谐波的个数与振幅类型。不过均衡的发明者很聪明,他并不让EQ处理不可琢磨的谐波去改变音 {MOD},而是通过一种巧妙的方法,间接的改变了音 {MOD}:

从高中物理书上的“振动与波”一章可知频率等于周期的倒数。而所谓周期,就是指物体完成某种运动,回到初始状态所经历的时间。大家请看这张图:



由图中的纵轴的零点来看,这个波形的从0时刻从0振幅开始跨越1/440秒后回到了初始状态(第1/880点纵轴位置也是0点,但是运动方向与初始位置相反。所以不能当作返回)。现在我们知道这个波形的频率是440Hz(1/440的倒数),可是这个波形就只有440Hz的声音么?不是的。如果我们从图中纵轴的某个非零位置看上去,如图:



正如大家看到的,这一段里,振动回到平衡位置经历的时间是1/1000秒,也就是说,图中绿 {MOD}部分是频率为1000Hz的波形。同样的,从纵轴不同的非零位置看,可以得到各种频率的波形,如图:



这样,我们就近似得到了波形的各个分波。下面EQ所要做的,就是调整各个近似分波的振幅(音量)大小。但在这之前,我们先要下一个定义:同样的波形,在纵轴的不同位置看上去有不同的频率,我们把从平衡位置(纵轴零点)看上去呈现的频率称为“乐音频率”,把从纵轴不同位置看上去的分波统称“声音频率”。人耳在接收声音的时候,会自动把耳膜在平衡位置的振动频率(也就是“乐音频率”)当作音高,把其他频率转化为音 {MOD}。

2.模拟EQ,数字EQ横纵比:

最原始的EQ,是利用电容器的所谓“容抗”现象来调整声音的音 {MOD},所谓“容抗”,既是说电容器有这样一种物理现象。对于不同规格的电容,其对不同频率交流电信号有减弱或提升的现象。声音从mic转化后会变成交流电信号,电流I会正比于声音振幅(其实只能近似正比)。I通过导线进入EQ,我们用一个3段EQ的理论电路来举例如图:



图中3个不同规格的电容器分别负责调整高频,中频和低频。由于三个电容分别对高,中,低频率的敏感程度不一样,人们便可以通过调整各个电容的电流传输效率来产生EQ效果。这种利用物理现象的方法是明智又省力的,而且相当精确!但是随着数码录音技术的发展,录音师们开始喜欢在后期加入EQ,传统EQ便不能满足需要了。于是越来越多的数字EQ出现在了人们眼前。在声音信号已经量化的数字信号中调整EQ,就必须利用数学算法来解决。大家一定都听说过“采样率”这个概念。在数字音频信号中,波形的变化不能是连续的,而是由一个一个采样点串起来的。如图:



这种设计产生了一个麻烦??我们在分析采样点频率时很难找到另一个采样点刚好与这个点振幅状态一致,如图:



所以,数码EQ必须像穿线一样将各个采样点连起来,才能近似找到两个状态一致的点。说起来容易作起来难,电脑不是人脑,只能以数学方法来“穿线”。最古老的方法,我称作“直线路径”即用直线连接各个采样点。这种做法很简单,但是谁都知道采样点与采样点之间不可能是直线连接,这样会产生很大误差!后来人们根据高数中的某个算式(名字忘了),用最接近原始波形的曲线连接了采样点,我称作“模拟路径”。如图:



这种方法误差依然存在,毕竟那是理论算出来的不是真正的波形。但是已经与原始波形相差很少很少了。现今流行的数字EQ,大都采用这种设计。

3.数字EQ的原理:

数字EQ虽然种类繁多,其实原理都是一样的,即:将输入信号“x”建立对应输出信号“Y”,Y=f(X),其中f()这个作用式中又包括了一个与“x”对应频率“k”的函数。将对应“X”的函数表达式展开也就是: Y=g(k)*X。其中g()随EQ参数调节而变化。

举例:古老数字EQ的原理。

这是一个古老的3段EQ,使用“直线路径”。我们把中频提升到2倍,高频提升3倍。这时,函数的作用式就变成了:

Y=1*X (k属于0hz到400hz)
Y=2*X (k属于400hz到2500hz)
Y=3*X (k属于2500hz到无穷)

图像:



从图上可以看出(希望大家看的懂啊呵呵),这种EQ调节“有塄有角”,399.9hz振幅还一点不变,到401hz就突然增加2倍。我和朋友写过一个小播放器,就加入了这EQ,产生了魔鬼的声音…………现今的EQ不但拥有“模拟路径”,还拥有渐变的函数作用式。同样的3段EQ,把中频提升到2倍,高频提升3倍,函数图像会变的很圆滑(函数式展开很恐怖,就不细说了):



如图所示,这个“楼梯”很圆滑,在虽然中频从400hz开始算起,但是从350hz左右就已经开始增加振幅产生渐变的效果。大家可以试试,即便把EQ的高频降低到0,我们依然可以听到一点高频。而且由于采用了“模拟路径”,使频率的分析更准确!更加容易调节。但这两种优化算法比古老EQ更费系统资源。

我们之所以要讲到已经没有用的古老EQ,是因为它更方便人们理解EQ。有些朋友总是问:EQ效果器既然能改变声音的频率,C调的歌调完EQ会不会变成降B??降低bass的低频,bass听起来会不会好像升了一个8度??大家还记得前文提到的“乐音频率”和“声音频率”概念么?我们带着这个概念从古老EQ入手来解释这两个问题。

我们来看古老EQ的公式:Y=r*X (k属于ahz到bhz)。前面已经说过,声音的音高只与“乐音频率”有关。也就是说,想证明EQ效果器能改变声音的频率而不改变音高,只需证明EQ效果器能改变声音频率而不改变乐音频率。请看下图:



根据乐音频率的定义,它必然是两个同样状态的0点之间时间长度的倒数(第1零点,第3零点)。我们设1点的时刻为t1,3点的时刻为t2。乐音频率f=1/(t2-t1)。我们来证明t1时刻或者t2时刻不发生变化:对于任意一个输入信号“x”有输出信号Y=r*X (k属于ahz到bhz)。在任意t时刻,经过EQ处理的信号可以改变为任意值。但是由于1,3点的X值为0,所以无论我们如何调整EQ参数,Y=r*0=0,所以在1,3点,X值永远等于Y值为0。即所有振幅为0的时刻点经过EQ处理,振幅依然为0,所以第1零点,第3零点之间的时间间隔不随参数变化而变化。如图:



这就是EQ效果器能改变声音频率而不改变音高的原因,所以大家(尤其是初学者)大可放心地使用EQ。其实随着技术的进步,数字EQ的算法也开始变得多种多样。就在这篇稿子即将完成时,又听说有通过任意频点的前后两点前后两点计算斜率(就是该点的速度)来确定频率的新奇高招,但EQ的宗旨不变??只改变千篇一律的音 {MOD}。声音频率和音乐中440hz等等乐音频率不是一个概念,调低高频音乐不可能没了高声部,bass也不会因为降低低频而消失。