14个版本
0.2.12-alpha.0 | 2023年4月7日 |
---|---|
0.2.11-alpha.0 | 2022年12月19日 |
0.2.5-alpha.0 | 2022年6月21日 |
0.2.4-alpha.0 | 2022年3月14日 |
0.1.42-alpha.0 | 2021年10月27日 |
在#数字信号处理中排名20
在3个crate(2个直接)中使用
735KB
13K SLoC
Surge合成器系统的3波段均衡器效果
surgefx-eq3band
crate提供3波段均衡器效果,作为Surge合成器系统的子组件。此效果允许用户增加或减少音频信号中三个不同频率带的幅度,提供音调塑造和声音设计功能。
3波段均衡器使用一系列带通滤波器实现,每个滤波器都有可调节的增益(以dB为单位)、频率和Q因子。单个带通滤波器的数学表示如下:
H(ω) = G / (1 + jQ * (ω/ω0 - ω0/ω))
其中H(ω)是频率响应,G是增益,Q是品质因数,ω是角频率,ω0是中心频率,j是虚数单位。
在surgefx-eq3band
crate中,以下标记用于控制均衡器的参数
-
control_group
:定义均衡器的控制元素组。 -
control_type
:表示控制类型,例如滑块或旋钮,用于调整均衡器的参数。 -
default_value
:指定每个控制的默认值。 -
max_value
:设置每个控制的最高值。 -
min_value
:设置每个控制的最低值。 -
modulateable
:指示参数是否可以被其他来源(如LFO或包络)调制。 -
moverate
:表示参数变化的速率。
Eq3Band
结构是均衡器的主要组件,包含初始化、处理和更新均衡器参数的方法。关键方法包括init
、process
和update
,分别处理均衡器的初始化、处理和更新。
在处理阶段,均衡器通过使用 apply_gain
方法将增益应用于每个频段。均衡器的输出是处理过的频段的组合,为声音设计和音色塑造提供了一种多功能的工具。
44> 从数学角度来看,均衡器是如何工作的?从物理角度来看呢?从工程角度来看呢?
从数学角度来看,均衡器通过调整音频信号中特定频段的幅度来工作。这通常通过使用具有特定频率响应的滤波器来完成。滤波器的频率响应 H(ω) 决定了它将如何影响输入信号中每个频率分量的幅度和相位。
在简单的图形均衡器的情况下,使用的滤波器通常是具有固定中心频率和带宽的带通滤波器。用户可以调整每个滤波器的增益来提升或削减相应频段的幅度。参数均衡器提供了更多的控制,允许用户调整每个带通滤波器的中心频率和带宽(或Q因子),以及增益。
从物理角度来看,均衡器可以被认为是一系列选择性放大或衰减音频信号中特定频段的滤波器。这可以通过使用诸如电阻器、电容器和电感器之类的模拟电子元件,或者近似模拟滤波器行为的数字算法来实现。
在模拟均衡器中,滤波器通常使用无源或有源电子电路来实现。无源均衡器依赖于电阻器、电容器和电感器来创建所需的频率响应,而有源均衡器使用运算放大器(op-amps)来控制响应并提供额外的增益。另一方面,数字均衡器使用数字信号处理(DSP)算法在数字域中操作音频信号。
从工程角度来看,均衡器的设计涉及选择适当的滤波器类型、确定所需的频率带以及选择适当的控制机制(例如,滑块、旋钮或数字界面)。均衡器的性能可以使用各种指标来评估,例如信噪比、总谐波失真和频率响应精度。此外,工程师在设计用于特定应用或产品的均衡器时,还必须考虑功耗、尺寸和成本等因素。
45> 你能给我展示一个框图吗?这个处理器是如何参数化的?
以下是3波段均衡器的一个简单框图
┌─────────────┐
│ Input Signal│
└──────┬──────┘
│
┌────────▼─────────┐
│ Splitter │
└───────┬─┬────────┘
│ │
┌─────────▼─▼────────┐
│Low-band│Mid-band│High-band│
│ Filter │ Filter │ Filter │
└─────────┬─┬───────┬─┬──────┘
│ │ │ │
┌──────┴─▼───────┴─▼─────┐
│ Summer │
└─────────┬─────────────┘
│
┌────────▼───────┐
│ Output Signal │
└───────────────┘
在此图中,输入信号首先发送到一个分割器,将信号分成多个频段。然后每个频段通过一个单独的滤波器(低通、带通或高通)进行处理,该滤波器可以具有可调整的增益来提升或削减相应频率范围的幅度。过滤后,信号被相加以产生输出信号。
均衡器中可以调整的参数通常包括
-
中心频率:每个带通滤波器的中心频率。在图形均衡器中,这些频率通常是固定的,而在参数均衡器中,它们可以被用户调整。
-
带宽或Q因子:滤波器影响的频率带的宽度。较窄的带宽(或较高的Q因子)允许对特定频率范围进行更精确的控制。此参数在参数均衡器中可调整。
-
增益:每个频段幅度提升或削减的量。此参数可以在图形和参数均衡器中调整。
通过调整这些参数,用户可以调整均衡器的频率响应以满足他们的需求,无论是增强特定频率范围、降低不需要的频率,还是塑造音频信号的整体音色平衡。
46> 能否展示十二种使用该处理器实现各种音频效果的方法?每个参数是如何设置的?如何描述它产生的声音?计算成本如何?
以下是用3波段均衡器实现各种音频效果的十二种不同方法。每种场景都描述了参数设置和产生的声音。计算成本取决于均衡器中使用的特定算法和滤波器设计,但一般来说,3波段均衡器的计算成本不高。
-
细微增强:略微提升低频和高频波段,以增加混音的温暖和存在感。参数:低频增益+1-2 dB,高频增益+1-2 dB。声音:温暖且略微明亮。
-
中频挖洞:降低中频波段以创造挖洞声音,常见于重金属吉他音色。参数:中频增益-4至-6 dB。声音:挖洞,强调低频和高频。
-
提升存在感:提升高频以增强人声或乐器的存在感和清晰度。参数:高频增益+3至+6 dB。声音:更清晰,高频更详细。
-
增强低音:增加低频增益以强调混音中的低频。参数:低频增益+4至+6 dB。声音:更饱满,低音更强大。
-
降低低音:减少低频增益以降低低频并创造更薄的声音。参数:低频增益-4至-6 dB。声音:更薄,低音更轻。
-
高频滚降:减少高频增益以创造更温暖、更复古的声音。参数:高频增益-3至-6 dB。声音:更温暖,更暗。
-
提升中频:增加中频增益以强调中频,这有助于人声或乐器在混音中突出。参数:中频增益+3至+6 dB。声音:中频更丰富,更聚焦。
-
窄带陷波滤波:使用窄带宽度和切除特定频率以减少共振或反馈。参数:中频增益-12至-18 dB,窄带宽/Q。声音:减少问题频率。
-
收音机效果:提升中频同时降低低频和高频,以模拟小型收音机扬声器的声音。参数:低频增益-6 dB,中频增益+6 dB,高频增益-6 dB。声音:尖锐,频率范围窄。
-
鼓室增强:提升低频以强调低音鼓,提升高频以增强钹的亮度。参数:低频增益+3 dB,高频增益+3 dB。声音:更有力度的低音鼓,更明亮的钹。
-
人声去嘶声:减少5-8 kHz附近的窄带以降低人声中嘶嘶声的刺耳感。参数:中频增益-3至-6 dB,窄带宽/Q,中心频率5-8 kHz。声音:更平滑,嘶嘶声更轻。
-
低音效果:降低低频和高频以创造类似电话的窄带声音。参数:低频增益-12 dB,高频增益-12 dB。声音:窄带中频,降低低音和高音。
请注意,具体产生的声音可能因均衡器的具体实现、输入音频以及信号链中的任何其他处理而有所不同。
47> 为什么一些均衡器比其他的好?能否描述如何实现使某些均衡器闪耀的数学差异?例如,我考虑了SSL这样的单位,它们因质量而闻名。其他一些著名的均衡器有哪些,它们是如何工作的?
均衡器的质量取决于多个因素,例如其滤波器设计、提供的均衡化类型、易用性和声音特性。以下是为什么一些均衡器被认为比其他更好的原因:
-
滤波器设计:高质量的均衡器通常使用更先进的滤波器设计,这导致更理想的频率响应或相位特性。例如,它们可能具有最小的相位失真或更精确地控制均衡曲线的形状。
-
算法质量:数字均衡器中使用的算法可能会影响音质。更先进的算法可以通过最小化失真,如混叠和量化噪声,来提高音质。
-
易用性:一些均衡器更加直观且易于使用,使用户能够更快、更有效地达到所需的音质。这可以归因于设计良好的用户界面或简化均衡过程的特定功能。
-
音质特性:一些均衡器以其特定的音质特性而闻名,这可以归因于设计中所使用的独特电路或算法。例如,模拟均衡器可以引入谐波失真、饱和或噪声,这会给声音增添特定的特色,在某些情况下可能是有益的。
一些知名均衡器和它们的特性
-
SSL G系列均衡器:这是在Solid State Logic的G系列模拟控制台中找到的著名均衡器。它以其平滑、音乐性的声音而闻名,部分原因是设计中使用的特定电路,包括使用电压控制放大器(VCAs)和独特的钟形曲线形状。
-
API 550A:这是一种经典的3波段参数均衡器,以其强劲和温暖的声音而闻名。它使用API的专有“比例Q”设计,该设计会根据应用的增加或减少量自动调整均衡曲线的带宽。这可以实现更自然、更音乐性的均衡。
-
Neve 1073:这是一款传奇的均衡器和预放模块,已在无数录音中使用。它以其温暖和丰富的声音而闻名,部分原因是使用了离散的A类电路和输入输出级都使用了变压器。
-
Pultec EQP-1A:这是一款用于众多经典录音的被动管式均衡器。它以其能够为声音增添平滑、温暖特性的能力而闻名,这主要归因于设计中使用了管子和变压器。
-
Massenburg DesignWorks MDWEQ:这是一款由著名工程师George Massenburg设计的数字均衡器。它以其透明和精确的均衡而闻名,这是由于软件中使用的先进算法和滤波器设计的结果。
这些均衡器各有其独特的设计,了解它们的特定功能和特性对于有效地实施它们的数学差异至关重要。虽然在数字均衡器中可以模仿这些设计的某些方面,但一些特性,如模拟组件的相互作用和变压器的 影响,可能更难以准确复制。
如何在Verilog-A中实现3波段均衡器?
在Verilog-A中实现3波段均衡器需要设计能够改变输入信号中某些频率分量振幅的滤波器。以下是在Verilog-A中实现基本3波段均衡器的步骤:
-
定义滤波器类型:均衡器中的三个波段通常由低通、带通和高通滤波器定义。可以使用相应的传递函数或电路模型来实现滤波器类型。
-
实现滤波器传递函数:传递函数可以使用标准数学函数(如对数、指数和三角函数)来实现。例如,简单一阶低通滤波器的传递函数可以定义为
HLP(s) = 1/(1 + s*TLP)
其中TLP是滤波器的时间常数。
-
连接滤波器:三个滤波器可以串联连接,每个滤波器过滤掉特定的频率范围。一个滤波器的输出连接到下一个滤波器的输入。
-
实现增益控制:每个滤波器可以调整以具有不同的增益,以实现所需的均衡曲线。增益可以通过一组电压控制放大器(VCAs)来控制。
以下是一个实现简单3波段均衡器的Verilog-A代码示例
module three_band_eq(in, out, clk, rst);
// Input and output signals
electrical in, out;
electrical clk, rst;
// Define filter parameters
real R1 = 1e3;
real R2 = 2e3;
real C1 = 1e-9;
real C2 = 2e-9;
// Define filter transfer functions
real s = 2*pi*freq;
real Hlp = 1/(1 + s*R1*C1);
real Hbp = s*R2*C2/(1 + s*R2*C2);
real Hhp = s*R1*C1/(1 + s*R1*C1);
// Define gain control parameters
real G1 = 0.5;
real G2 = 0.7;
real G3 = 1.0;
// Implement the filters
real v1 = in*v(G1*Hlp);
real v2 = v1*v(G2*Hbp);
real v3 = v2*v(G3*Hhp);
// Output the filtered signal
out <+ v3;
endmodule
该代码定义了三个滤波器传递函数,用于低通、带通和高通滤波器,然后对每个滤波器应用增益控制,以实现所需的均衡曲线。然后将滤波器串联连接,以产生最终的输出信号。
依赖项
~11–20MB
~297K SLoC