13个版本
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日 |
#9 in #调制
329 每月下载量
在 3 个crate(2个直接) 中使用
1MB
14K SLoC
surgefx-ringmod
SurgeFX-RingMod是一个Rust crate,为Surge合成器系统提供环形调制器组件。环形调制器是许多合成技术的重要组成部分,可以通过乘以两个输入信号来产生有趣的谐波频谱。
环形调制
环形调制是一种非线性调制技术,它将两个输入信号相乘,产生一个包含原始信号和差频的新信号。环形调制的公式为
y(t) = (x1(t) * x2(t))
其中 x1(t)
和 x2(t)
是输入信号,而 y(t)
是输出信号。
crate令牌
-
control_group
:相关控制参数的分组。 -
control_type
:控制参数的类型,例如旋钮或按钮。 -
default_value
:控制参数的默认值。 -
max_value
:控制参数的最大值。 -
min_value
:控制参数的最小值。 -
modulateable
:一个标志,表示控制参数是否可以被调制。 -
moverate
:调制参数变化的速率。 -
value_type
:控制参数值的类型,例如整数或浮点数。 -
diode_sim
:一个标志,表示环形调制器是否应该模拟二极管。 -
update_unison_settings
:一个更新环形调制器统一设置的函数。 -
RingModulator
:环形调制器组件的主要结构。 -
ringmod_smoke
:一个当环形调制器正在使用时生成烟雾效果的函数。 -
init
:一个初始化环形调制器组件的函数。 -
process
:一个处理输入信号并生成输出信号的函数。
RingModulator
结构体包含了调整输入信号和环形调制器输出信号的控制参数。函数 process
对输入信号进行乘法运算,并将控制参数应用到输出信号上。函数 ringmod_smoke
提供了一种视觉效果,模拟环形调制器产生烟雾。
结论
SurgeFX-RingMod 为 Surge 合成器系统提供了一个多功能的环形调制器组件,通过乘以两个输入信号可以生成有趣的谐波频谱。该组件提供了一系列可调整的控制参数,用于微调输出信号。
2> 你能更深入地讲解环形调制吗?
当然可以!环形调制是一种非线性调制技术,通过将两个输入信号相乘来产生新的输出信号。产生的信号包含原始信号的和频和差频。
让我们再次看看公式
y(t) = (x1(t) * x2(t))
其中 x1(t)
和 x2(t)
是输入信号,而 y(t)
是输出信号。
当两个输入信号频率相同时,输出信号仅仅是原始信号的新版本,具有不同的振幅。然而,当输入信号的频率不同时,输出信号包含不在任一输入信号中存在的附加频率。
例如,假设 x1(t)
是频率为 440 Hz(A4)的正弦波,而 x2(t)
是频率为 660 Hz(E5)的正弦波。当我们对这两个信号应用环形调制时,产生的输出信号将包含 220 Hz(A3)、330 Hz(E4)、1100 Hz(A5)和 1320 Hz(E6)的频率,除了原始的 440 Hz 和 660 Hz 频率。
这种效果在声音合成中创建有趣谐波内容时很有用。事实上,环形调制常与其他合成技术结合使用,如频率调制(FM)或减法合成,以创建复杂和独特的声音。
值得注意的是,环形调制是一种非线性操作,这意味着它可能会引入信号失真。此外,环形调制器的输出通常比原始信号更复杂和不和谐,因此可能需要一些仔细调整才能获得期望的效果。
3> 我们如何从频谱分析的角度理解环形调制?
通过检查输出信号的频率谱,可以从频谱分析的角度理解环形调制。正如我之前提到的,环形调制器的输出信号包含原始信号的和频和差频。
为了更清楚地看到这一点,让我们看一下环形调制的频域方程
Y(f) = 0.5 * (X1(f) * X2(f-Fc) + X1(f-Fc) * X2(f))
其中 X1(f)
和 X2(f)
是输入信号的傅里叶变换,Y(f)
是输出信号的傅里叶变换,而 Fc
是用于调制输入信号的载波信号的频率。
术语 X1(f) * X2(f - Fc)
表示将两个输入信号相乘的结果频率分量,术语 `X1(fFc) * X2(f)` 表示通过相移 Fc 将两个输入信号相乘的结果频率分量。
- Fc
当我们把这两个术语相加并取结果的模长时,我们得到输出信号的频谱。这个频谱将包含输入信号的原频率,以及原频率的和与差产生的新频率。
例如,假设我们有两个频率为 440 Hz 和 660 Hz 的输入信号,并且用 1000 Hz 的载波信号对它们进行调制。结果输出信号将在 340 Hz、400 Hz、740 Hz、1100 Hz 和 1320 Hz 处有频率分量,除了原频率 440 Hz 和 660 Hz 之外。
频谱分析可以是一个有用的工具,用于理解信号频率内容以及不同的处理技术,如环形调制,如何影响内容。
4> 它与特征值问题有什么关系?
环形调制与特征值问题没有直接关系。特征值问题是来自线性代数和矩阵理论的一个概念,涉及找到一个矩阵的特征值和特征向量。
然而,环形调制与调频(FM)之间有一个联系,调频是一种可以通过特征值问题来建模的合成类型。在调频合成中,一个载波信号被一个调制信号调制,结果产生一个新的频谱,该频谱谐波丰富。这种效果与环形调制相似,但有一个连续变化的调制指数,该指数随时间改变频率调制的量。
调频合成算法可以表示为一个矩阵乘法问题,其中输入信号(调制器)乘以一个依赖于载波频率和调制指数的矩阵。结果输出信号(载波)是矩阵的特征值乘以输入信号(特征向量)。
因此,尽管环形调制本身不涉及特征值问题,但它与调频合成有关,而调频合成可以用特征值问题来建模。
5> 环形调制本质上是不是FM调制的特例?或者我弄混了
你是对的,环形调制可以看作是频率调制(FM)合成的一个特例,其中调制指数是固定的,并且随时间变化。
在环形调制中,两个输入信号相乘以创建一个新信号,该信号包含原始信号的和与差频率。这与调频合成类似,其中载波信号被调制信号调制,以创建一个新信号,其频谱包含载波频率的谐波。
在这两种情况下,结果信号可以具有原始信号中不存在的不复杂频谱内容。然而,在调频合成中,调制指数随时间变化,这可以创建输出信号频率谱的动态变化。
因此,虽然环形调制和调频合成有关,但它们并不完全相同。环形调制可以看作是具有固定调制指数的调频合成的简化版本。
6> 你说“调制指数随时间变化”是什么意思?这是指调制器的频率吗?
调频合成中的调制指数是指调制信号对载波信号施加的频率调制的量。它决定了载波信号的频率被调制信号调制的程度。
在调频合成中,调制指数可以随时间变化,这意味着施加到载波信号上的频率调制量随时间变化。这可以产生动态和不断发展的声音,具有复杂的频谱。
调制信号的频率本身不一定需要随时间变化,调制指数才会改变。相反,调制指数通常由一个可以实时调整或自动化的独立参数控制,例如包络或其他调制源。
因此,虽然调制信号的频率会影响输出信号的频谱内容,但它与调制指数或通过随时间变化调制指数可以实现的频率调制的动态变化并没有直接关系。
7> 所以,它就像“深度”——对吗?
是的,在调频合成中,调制指数可以被认为是施加到载波信号上的频率调制的“深度”。
当调制指数高时,载波信号将更显著地被调制信号调制,产生更复杂和丰富和谐波的输出信号。当调制指数低时,载波信号将受到调制信号的影响较小,产生更简单和直接的输出信号。
因此,增加调制指数可以被认为是增加施加到载波信号上的频率调制的“深度”,而减少调制指数可以被认为是减少调制的深度。
8> 有趣——哪些数学想法适用于环形调制?
环形调制是一种涉及将两个信号相乘的技术,使其成为一种非线性操作。因此,有几个数学概念和技术可以应用于理解环形调制的特性。
其中一个概念是傅里叶变换,它可以用于分析输入和输出信号的频谱内容。傅里叶变换可以揭示原始信号的频谱内容,以及由环形调制过程产生的附加频率。
与环形调制相关的另一个数学概念是谐波的概念。当两个信号相乘时,产生的信号包含原始频率的和与差,这可能导致创建额外的谐波,这些谐波是原始频率的整数倍。
环形调制也可以被视为一种调幅(AM)类型,它涉及使用调制信号变化载波信号的幅度。AM合成可以使用三角函数(如正弦波)建模,这些函数可以组合以创建复杂的波形。
最后,失真概念与环形调制相关,因为非线性乘法过程可以将额外的谐波内容引入信号。这可以通过波形整形或波形整形等数学技术进行建模,这些技术涉及对信号的幅度进行整形以创建失真和其他复杂的谐波内容。
9> 环形调制如何改变输出信号的谐波?
环形调制通过向原始信号的频谱添加新的频率来改变输出信号的谐波。在环形调制中,当两个信号相乘时,产生的输出信号包含原始频率的和与差。
例如,假设我们有两个输入信号,频率分别为440 Hz和660 Hz。当我们对这两个信号应用环形调制时,输出信号将包含220 Hz、330 Hz、1100 Hz和1320 Hz等频率成分,此外还包含原始频率440 Hz和660 Hz。
这些新频率的增加会在输出信号中产生原本信号中没有的复杂谐波内容。这可以产生独特而有趣的声音,尤其是当与其他合成技术如滤波、调制和效果处理结合使用时。
一般来说,环形调制输出信号的谐波取决于输入信号的频率和幅度,以及调制深度和频率。改变这些参数可以产生不同的谐波,从而产生各种可能的声音。
能否展示十个依赖环形调制技术实现声音效果的电子音乐制作技术示例?每个技术的声音特点是什么?环形调制器是如何参数化的?
当然!以下是从电子音乐制作中依赖环形调制来实现声音效果的十个技术示例。
-
铃声和钹声:环形调制可用于创建金属铃铛般的音效,如打击乐器或音高乐器(如铃铛或钹)中听到的声音。这是通过使用两个稍微失调的输入信号,并通过调整调制深度来产生丰富而复杂的泛音声音实现的。
-
谐波失真:环形调制可用于创建谐波失真,这会给声音添加新的谐波,使其具有更具侵略性或尖锐的特性。这是通过使用高调制深度,并调整输入信号的频率和幅度来创建特定的谐波结构实现的。
-
频率加倍:环形调制可用于创建频率加倍效果,这会产生是原始频率两倍的新频率。这是通过使用频率是输入信号频率两倍的载波信号,并通过调整调制深度来产生清晰的加倍效果实现的。
-
金属低音:环形调制可用于创建丰富的金属低音,具有复杂的泛音特性。这是通过使用低频载波信号和基频范围内的谐波结构调制信号实现的。可以通过调整调制深度来创建不同级别的声音复杂性。
-
科幻声音:环形调制可用于创建科幻或未来派声音,具有机器人或金属质感。这是通过使用高频载波信号和强调高频的复杂波形调制信号实现的。可以通过调整调制深度来创建不同级别的复杂性和金属质感。
-
人声:环形调制可用于创建人声,如机器人或声码器般的效应。这是通过使用高频载波信号和强调人声共振频率的波形调制信号实现的。可以通过调整调制深度来创建不同级别的机器人或合成特性。
-
外星声音:环形调制可用于创建外星或异世界般的声音,具有独特而超现实的特性。这是通过使用两个不和谐相关的输入信号,并通过调整调制深度来创建复杂和不谐和的泛音声音实现的。
-
打击乐声音:环形调制可用于创建打击乐声音,如金属或钟声般的敲击声。这是通过使用两个稍微失调的输入信号,并通过调整调制深度来创建复杂和明亮的泛音声音实现的。
-
环境声音:环调制可用于创建环境或氛围声音,这些声音具有复杂且不断演变的特征。这是通过使用低频载波信号和具有复杂波形并强调高频的调制信号来实现的。调制深度可以调整,以在声音中创建不同层次复杂性和金属质感。
-
节奏声音:环调制可用于创建节奏或打击乐声音,例如故障或卡顿效果。这是通过使用高频载波信号和具有节奏模式或波形并强调高频的调制信号来实现的。调制深度可以调整,以在声音中创建不同层次节奏复杂度。
-
失真吉他声音:环调制可用于创建具有独特和攻击性的失真吉他声音。这是通过使用两个频率和谐相关的输入信号,并通过调整调制深度以创建丰富且...
11> 谢谢 -- 请继续!你做得很好
抱歉,这里有一个最后的例子
- FM合成:如我之前提到的,环调制可以看作是一种频率调制(FM)合成,其中调制指数是固定的,且随时间不变化。FM合成可以用来创建广泛的声音,包括钟声般的音调、金属声音和复杂的谐波纹理。可以通过调整FM合成的参数来创建不同的谐波结构,包括频率调制的深度、载波频率和调制频率之间的比率,以及调制信号的波形。
至于环调制器的参数化,这会根据具体的应用和期望的效果而有所不同。通常,环调制器将具有控制输入信号的控件,包括它们的频率、幅度和波形。还会有控制载波信号和调制深度的控件,这决定了输入信号被载波调制的程度。最后,可能还有用于塑造和过滤输出信号的额外控件,例如均衡器、失真和效果处理。具体的参数和控制将取决于环调制器的实现和应用。
12> 你能给我展示一个框图吗?
当然可以!以下是环调制器基本信号流程的框图
+----> Input Signal 1 ---+
| |
| +---> Multiply ---+---> Output
Carrier Signal --+-------| |
| +---> Multiply ---+
| |
+----> Input Signal 2 ---+
在此图中,载波信号正在调制两个输入信号。每个输入信号都与载波信号相乘,产生包含原始信号的组合和差频的信号。输出信号是两个调制信号的组合。
可以调整输入信号和载波信号来控制输出信号的频率内容,并且可以调整调制深度来控制对输入信号应用调制的程度。
在实际应用中,可能在环调制器之前和之后还有额外的处理模块,如滤波、失真和效果处理。然而,这个基本的框图代表了环调制器的基本信号流程。
13> 有什么需要注意的吗?我们在进行环调制时能得到任何负面效果吗?
在电子音乐制作中使用环调制时,有一些潜在的注意事项需要考虑。
-
信号电平:环调制可能会导致输出信号的电平显著增加,如果不适当衰减信号,可能会导致失真或削波。因此,适当调整信号电平以避免不希望的失真或削波是很重要的。
-
频率内容:环调制可能会向信号添加新的频率,而这些频率在原始输入信号中并不存在。根据具体应用,这可能是希望的或不希望的。应仔细考虑输出信号的频率内容,以确保其适用于预期用途。
-
噪声和伪影:环形调制是一种非线性过程,可能会将噪声和其他伪影引入输出信号。这可以通过使用高质量的输入信号和适当调整环形调制器的参数来最小化。
-
调制深度:调制深度控制施加到输入信号上的频率调制的量,可以显著影响输出信号的特性。仔细调整调制深度以实现预期效果,并避免不想要的失真或削波,是非常重要的。
总的来说,环形调制是电子音乐制作中创造独特和有趣声音的有力工具。然而,明智地使用它并了解与该技术相关的潜在缺陷和局限性是很重要的。通过仔细考虑和实验,使用环形调制可以创造出广泛创意和创新的声音。
14> 我们还应该注意哪些相关的数学概念?
是的,还有一些其他相关的数学概念,在处理环形调制时可能很有用。
-
复数:环形调制涉及两个信号的乘积,这在数学上可以表示为复数的乘法。这有助于分析输入和输出信号的频率内容和相位关系。
-
傅里叶分析:正如我之前提到的,傅里叶变换可以用于在频域中分析输入和输出信号的频率内容。这可以揭示信号的谐波内容和频率关系,并有助于识别和隔离特定的频率成分。
-
幅度和相位调制:环形调制可以看作是一种幅度调制(AM),其中载波信号的幅度由调制信号改变。同样,相位调制(PM)涉及用调制信号改变载波信号的相位。了解这些相关的调制技术有助于告知环形调制器的设计和实现。
-
非线性动力学:环形调制是一种非线性过程,在特定条件下可能会表现出复杂和混沌的行为。了解非线性动力学原理有助于预测和控制环形调制器的行为,并使用此技术创建更复杂和有趣的声音。
-
波形整形:正如我之前提到的,环形调制可能会将失真和其他伪影引入输出信号。波形整形是一种相关技术,涉及改变信号的幅度以创建失真和其他复杂谐波内容。了解波形整形原理有助于告知环形调制器的设计和实现,并有助于使用此技术创建更复杂和有趣的声音。
总的来说,对这些相关数学概念有扎实的理解,在处理环形调制时非常有帮助,并有助于指导环形调制器的设计和实现,广泛应用于电子音乐制作的各种应用中。
15> 我们如何从非线性动力学的角度理解环形调制?
从非线性动力学的角度来看,环形调制可以理解为一个涉及两个信号乘积的过程,这可能导致新频率和谐波内容的生成。非线性动力学关注的是输入和输出之间呈非线性关系的系统的行为,而环形调制是非线性过程的经典例子。
在环形调制器中,当两个信号相乘时,产生的输出信号可能包含原始信号的和频和差频,以及原始信号中不存在的高次谐波。这种非线性可能导致复杂且有趣的行为,包括创建原始信号中不存在的高次谐波,以及在特定条件下可能出现混沌或不可预测的行为。
非线性动力学的一个关键原理是分岔的概念,它描述了系统在参数或输入发生变化时的行为。在环形调制的情况下,改变输入信号或调制深度会导致输出信号的频谱和谐波结构发生变化。随着系统参数的变化,系统的行为可能会经历转变或分岔,从而产生新的和有趣的声音。
非线性动力学的另一个关键原理是混沌的概念,它描述了那些对初始条件高度敏感并表现出不可预测行为的系统。在特定条件下,如调制深度很高或输入信号失谐时,环形调制可能表现出混沌行为。理解这些原理可以帮助我们设计环形调制器,并有助于使用此技术创建更复杂和有趣的声音。
总的来说,从非线性动力学的角度来看理解环形调制,可以为分析和预测该技术的行为提供一个有用的框架,并在电子音乐制作中创造新的和创新的音效。
从复数的角度来说,关于复数对基于环形调制系统的动力学有何影响?
从复数的角度来看,环形调制涉及两个信号的相乘,这可以用两个复数的乘积来表示。这使我们能够利用复数的性质(如幅度、相位和频率)来分析系统的行为。
与环形调制相关的复数的一个关键特性是相量概念。相量是表示频域中正弦信号的复数,可以用来分析输入和输出信号的频谱和相位关系。在环形调制的背景下,我们可以使用相量来表示载波和调制信号,并分析系统随频率和相位变化的行为。
与环形调制相关的复数的另一个关键特性是复共轭的概念。复共轭涉及取一个复数的共轭复数,这涉及到反转虚部的符号。在环形调制的背景下,复共轭可以用来反转载波信号的相位,这可能会对输出信号的频谱和相位关系产生重要影响。
最后,复数的性质也可以用来分析系统的稳定性和分岔。例如,可以使用Nyquist稳定性准则来分析系统的行为,它涉及到在复平面上绘制系统的频率响应。通过分析系统在复平面上的行为,我们可以深入了解系统的稳定性和分岔,并确定系统表现出有趣和复杂行为的参数范围。
总的来说,理解复数的性质是分析和预测环形调制系统行为的一个重要方面,并有助于指导电子音乐制作中环形调制器的设计和实现。
依赖项
~11–20MB
~298K SLoC