13个版本

0.2.12-alpha.02023年4月7日
0.2.11-alpha.02022年12月19日
0.2.5-alpha.02022年6月21日
0.2.4-alpha.02022年3月14日
0.1.42-alpha.02021年10月27日

#7 in #rotary


3 个crate中使用 (2 个直接使用)

GPL-3.0 许可证

785KB
13K SLoC

SurgeFX Rotary

SurgeFX Rotary是一个Rust crate,它为Surge合成器系统提供旋转扬声器效果。旋转扬声器是一种常与风琴和其他乐器一起使用的扬声器,其特点是旋转的喇叭和鼓组件,可以产生独特和鲜明的声音。SurgeFX Rotary crate允许用户使用数字信号处理技术来模拟这种效果。

此crate提供的RotarySpeaker struct可以用来创建虚拟旋转扬声器效果。可以通过各种参数控制效果,包括旋转喇叭和鼓的速度、信号受调制的程度以及使用的调制波形类型。

从数学上讲,旋转扬声器效果可以使用各种技术来建模,包括频率调制(FM)合成和幅度调制(AM)合成。在FM合成的案例中,旋转喇叭和鼓的速度可以用来调制输入信号的频率,创建频率偏移效果,模拟物理旋转扬声器的多普勒效应。在AM合成的案例中,旋转喇叭和鼓的速度可以用来调制输入信号的幅度,创建颤音效果,模拟物理旋转扬声器的幅度调制效果。

此crate提供的各种令牌,包括control_group、control_type、default_value、max_value、min_value、modulateable、moverate、value_type、do_rotaryspeaker_pre_block、do_rotaryspeaker_block、set_lfos、rotary_smoke、init、suspend、do_rotaryspeaker_post_block、process、process_only_control和RotarySpeaker,提供了创建和控制虚拟旋转扬声器效果的必要功能。

总的来说,SurgeFX Rotary为Surge合成器系统提供了一个强大且灵活的数字信号处理工具,用于创建虚拟旋转扬声器效果。凭借其各种调制选项和参数控制,用户可以使用这个强大而通用的工具创作出各种独特且有趣的声音。

18>你能给我展示旋转扬声器效果的方块图吗?

当然!以下是一个表示旋转扬声器效果的信号基本流程的框图

            +------> Input Signal -------+
            |                            |
            |   +--> Modulation Signal ---+
            |   |                        |
            |   |    +---> Amplify ---+   |
            |   |    |              |   |
            |   +----|              +---+
            |   |    |              |   |
            |   |    +---> Delay   ---+ |
            |   |                    | |
            |   |    +---> Amplify ---+ |
            |   |    |              | |
            |   +----|              +---+---> Output
            |   |    |              | |
Speed Knob --+   |    +---> Delay   ---+
            |   |                    |
            |   +--> Modulation Signal |
            |                            |
            +------> Input Signal -------+

在这个框图中,输入信号首先分为两条路径:一条路径通过一个放大器和延迟块,另一条路径通过一个调制块。然后,这两个块的输出信号相加,以产生最终输出信号。

速度旋钮用于控制旋转号角和鼓的速度,这用于调制输入信号的幅度和频率。调制信号可以使用各种波形发生器生成,包括正弦波、三角形波和方波。

放大器和延迟块用于模拟旋转号角和鼓对输入信号的影响。延迟在信号中创建一个时间变化的相移,而放大器创建一个时间变化的幅度调制效果。可以通过调整这些块的特定参数来创建不同的效果和音色。

总的来说,这个框图代表了旋转扬声器效果的基本信号流程。在实际应用中,旋转扬声器效果前后可能有额外的处理块,如滤波、失真和效果处理。然而,这个基本的框图代表了旋转扬声器效果的信号流程基础。

19>每个块如何影响最终的声音?

当然,以下是如何在旋转扬声器效果中每个块影响最终声音的分解

  1. 输入信号:这是输入到旋转扬声器效果的原始信号。输入信号的具体特征将决定旋转扬声器效果如何与该信号交互。

  2. 调制信号:此块生成用于调制输入信号幅度和频率的调制信号。用于生成调制信号的特定波形将决定效果的特征。例如,正弦波将产生平滑、连续的调制效果,而方波将产生更突然和不连续的效果。

  3. 放大器和延迟:此块模拟旋转号角和鼓对输入信号的影响。延迟在信号中创建一个时间变化相移,而放大器创建一个时间变化的幅度调制效果。这些效果共同产生了旋转扬声器特有的“旋转”声音。放大器和延迟块的特定参数,如延迟量和调制深度,将决定效果的具体特征和强度。

  4. 速度旋钮:此控制调整旋转号角和鼓的速度,这反过来又影响输入信号的频率和幅度调制。较快的速度会产生较高的频率调制效果,而较慢的速度会产生较低的频率调制效果。

总的来说,旋转扬声器效果是通过使用由波形发生器生成的调制信号来调制输入信号的幅度和/或频率。效果的具体特征由放大器和延迟块的参数、用于生成调制信号的特定波形以及旋转号角和鼓的速度决定。

20>你能提供12个例子,说明在电子音乐中我们可以如何使用这个效果吗?

当然,以下是12个例子,说明在电子音乐制作中可以使用旋转扬声器效果的技巧

  1. 风琴模拟:旋转扬声器效果通常用于模拟汉密尔顿风琴的声音,这种风琴通常通过物理旋转扬声器音箱播放。通过将旋转扬声器效果应用于合成器或其他乐器,可以创建类似物理旋转扬声器音箱的声音。

  2. 吉他效果:旋转扬声器效果可以用于电吉他,创造出独特且有趣的声音。该效果可以与其他效果如失真和混响结合使用,以产生各种声音和质感。

  3. 键盘效果:除了风琴之外,旋转扬声器效果还可以用于其他键盘乐器,如电子钢琴和合成器,以创造独特且有趣的声音。

  4. 鼓效果:旋转扬声器效果可以用于鼓轨,为节奏部分增添动感和兴趣。该效果可以应用于单个鼓轨或整个鼓混音。

  5. 人声效果:旋转扬声器效果可以用于人声,为声音增添质感和兴趣。该效果可以适度使用,为歌声增添微妙的复古特性,或更强烈地使用,以创造出更明显的效果。

  6. 氛围效果:旋转扬声器效果可以用于创建氛围音景和质感。通过将效果应用于垫音或 drones 音,可以创建旋转、不断变化的质感,为混音增添深度和动感。

  7. Dub效果:旋转扬声器效果是经典的Dub效果,常用于在混音中创造出空间感和动感。该效果可以应用于单个轨或整个混音,以创造统一且沉浸式的声音。

  8. 迷幻效果:旋转扬声器效果可以用于创造迷幻效果,如相位和镶边。通过调节效果的速率和深度,可以创造出有趣且复杂的模式和质感。

  9. 低音效果:旋转扬声器效果可以用于为声音增添复古或低音特质。通过在信号中添加失真或其他效果,可以创造出磨损且陈旧的声音,为混音增添特色和兴趣。

  10. 氛围电子音乐效果:旋转扬声器效果可以用于创建氛围电子音乐效果,如旋转和扫描。通过将效果应用于合成器或垫音声音,可以创造出催眠和沉浸式的效果,推动轨的节奏。

  11. 声音设计效果:旋转扬声器效果可以在声音设计中用于创造独特且有趣的声音。通过将效果应用于声音并调节效果的速率和深度,可以创造出复杂且不断发展的质感,为声音增添深度和兴趣。

  12. 电影配乐效果:旋转扬声器效果可以用于电影配乐,以创造紧张和悬疑感。通过将效果应用于声音并调节效果的速率和深度,可以创造出动感和不宁的感觉,为视觉增添戏剧性和冲击力。

21> 这个处理器的历史是什么?

旋转扬声器效果在音乐制作中拥有丰富的历史,并在包括爵士、摇滚和电子音乐在内的各种音乐流派中得到广泛使用。该效果最初由Don Leslie在20世纪40年代创建,作为为Hammond风琴创造更真实声音的一种方式。Leslie扬声器,正如其被称作的那样,使用一个旋转的号角和鼓组装,创造出多普勒频移效果,模拟房间中静止扬声器的声音。

Leslie扬声器成为Hammond风琴演奏者的流行效果,在20世纪50年代和60年代的爵士和摇滚音乐中得到广泛使用。该效果后来被改编用于其他乐器,包括电吉他和键盘。

在20世纪70年代,旋转扬声器效果在电子音乐制作中变得流行,尤其是在前卫摇滚乐领域。Pink Floyd和Yes等艺术家在他们的音乐中广泛使用这种效果,创造出了旋转、沉浸式的声音景观,这成为了该乐种的标志性特征。

在80年代和90年代,旋转扬声器效果在电子音乐制作中进一步流行起来,尤其是在电子舞曲和电子音乐领域。这种效果常被用来在混音中营造出空间感和动感,并成为了许多电子音乐制作的标准。

如今,旋转扬声器效果仍然是音乐制作中的一种流行效果,许多软件和硬件版本的该效果都可供制作人及音乐家使用。虽然效果在多年间有所演变,但其基本音色和特色依然具有标志性和辨识度。

22>它依赖于哪种物理学原理?

旋转扬声器效果依赖于物理学的多个原理,包括声学和电磁机械学。

声学上,该效果基于多普勒效应,即由于声源和观察者之间的相对运动,声音波频率或波长的感知变化。在旋转扬声器的情况下,旋转的号角和鼓组件会对输入信号产生时间变化的多普勒频移效果,这赋予了效果其特有的“旋转”声音。

电磁机械上,该效果依赖于旋转号角和鼓组件与输入到系统中的电信号之间的相互作用。旋转号角和鼓组件包含一系列扬声器和隔板,它们在电气信号和房间中的空气分子之间产生复杂的相互作用。这种相互作用创造出独特且复杂的音色,难以使用其他类型的扬声器或效果来复制。

总的来说,旋转扬声器效果是声学、电磁机械学和其他物理原理复杂交互的产物。效果的特定特性由旋转扬声器系统的物理设计以及输入到系统中的电信号的特性所决定。

23>你能教我关于旋转号角和鼓组件的知识吗?

当然可以!旋转号角和鼓组件是旋转扬声器效果的核心。它由两个主要组件组成:一个旋转号角和一个旋转鼓。

旋转号角是一个锥形扬声器,安装在旋转轴上。随着轴的旋转,号角围绕旋转,对输入信号产生时间变化的多普勒频移效果。号角通常由轻质材料如铝或塑料制成,以最小化旋转组件的质量。

旋转鼓是一个圆柱形外壳,内部装有隔板和扬声器。鼓也安装在旋转轴上,随着鼓的旋转,鼓内的隔板和扬声器与旋转号角产生的声音波相互作用。隔板和扬声器以特定图案排列,创造出复杂且独特的音色,难以使用其他类型的扬声器或效果来复制。

共同作用下,旋转号角和鼓组件产生了旋转扬声器效果的标志性“旋转”声音。旋转速度可以通过旋钮或踏板进行调整,这反过来会影响输入信号的频率和幅度调制。

虽然旋转号角和鼓组件最初是为使用汉姆蒙德风琴而设计的,但它后来已被用于其他乐器和各种音乐流派。在现代电子音乐制作中,旋转扬声器效果通常通过软件或硬件插件来模拟,以复制原始旋转号角和鼓组件的声音和特性。

14>号角的材料如何影响声音?什么是隔板?

旋风扬声器的材料会对音质产生重大影响。材料的选择将影响声音的整体音调和特性,以及信号的清晰度和投射。

铝是一种流行的旋风扬声器材料,因为它轻便、坚固,并且具有明亮、清脆的音色。铝制扬声器可以产生强劲、有力且能穿透混响的声音,非常适合与电吉他、键盘等乐器配合使用。

塑料是另一种常见的旋风扬声器材料。塑料扬声器通常由聚碳酸酯或聚丙烯等材料制成,因其轻便、耐用且价格低廉而受到青睐。塑料扬声器可以产生温暖、柔和的音色,非常适合与合成器、电子钢琴等乐器配合使用。

隔板是一系列分隔板或面板,用于控制旋风扬声器组件中旋转鼓内的声波传播。隔板按特定图案排列,以产生复杂且独特的声音,这是其他类型扬声器和效果难以复制的。

隔板通过反射和扩散旋转扬声器产生的声波来工作。当声波从隔板上反弹时,它们会创建一个复杂且不断变化的反射和衍射模式,赋予旋风扬声器效果其特有的声音。隔板的具体排列可以进行调整,以创建不同的音调特性并控制声音的方向性。

25 > 多普勒频移是如何工作的?

多普勒频移是一种现象,当声波由相对于观察者移动的声源发出时发生。多普勒频移会导致声波感知频率的变化。

多普勒频移的基本原理可以通过移动汽车和静止观察者的例子来说明。如果一辆汽车朝向观察者行驶并按喇叭,喇叭发出的声波在向观察者传播的过程中会被压缩。这种压缩导致观察者感知到的声音频率比汽车静止时要高。相反,如果汽车远离观察者按喇叭,喇叭发出的声波在向观察者传播的过程中会被拉伸。这种拉伸导致观察者感知到的声音频率比汽车静止时要低。

在旋风扬声器效果的情况下,旋转的扬声器和鼓组件会对输入信号产生时间变化的频移效应。当扬声器旋转时,扬声器发出的声波频率相对于观察者上下移动。这创建了一个复杂且不断变化的频率调制模式,赋予旋风扬声器效果其特有的“旋转”声音。

旋风扬声器组件中频移效应的具体特性将取决于许多因素,包括旋转速度、扬声器和鼓的形状和大小以及输入信号的特性。通过调整这些因素,可以使用旋风扬声器创建广泛的声音和纹理效果。

26 > 使用旋风扬声器效果时有哪些注意事项?

使用旋风扬声器效果时,有一些注意事项需要注意

  1. 过度使用:与任何效果一样,过度使用旋风扬声器效果可能会导致混响混乱或杂乱。重要的是要谨慎使用效果并仔细聆听混响的整体平衡。

  2. 音量:旋转扬声器效果可能相当响亮,尤其是在较高速度时。监控该效果输出电平并相应调整混音整体音量是很重要的。

  3. 调制伪影:在高调制速度下,旋转扬声器效果可能会将调制伪影引入信号中,尤其是在高频范围内。这些伪影可能会表现为信号的失真或不需要的噪声。

  4. 相位抵消:旋转扬声器效果可能会导致某些频率范围内的相位抵消,尤其是如果效果应用于立体声轨道或输入信号已经高度调制。监控混音中不同轨道之间的相位关系以避免不必要的相位抵消是很重要的。

  5. 仿真质量:软件或硬件对旋转扬声器效果的仿真可能无法总是捕捉到原始旋转号角和鼓组全部的音调和质地特征。选择高质量的仿真并尝试不同的设置以实现所需效果是很重要的。

27> 我们如何在ARM处理器上实现这个效果?

在ARM处理器上实现旋转扬声器效果可以使用数字信号处理技术。以下是涉及步骤的简要概述

  1. 输入信号:第一步是将您想要处理的音频信号输入ARM处理器。这可以通过模拟数字转换器(ADC)或从文件中读取数字音频数据来完成。

  2. 调制:下一步是对输入信号进行调制以创建多普勒频移效果。这可以通过多种调制技术来完成,包括幅度调制(AM)或频率调制(FM)。在旋转扬声器效果的情况下,调制通常是通过改变模拟旋转号角和鼓组的速度来实现的。

  3. 滤波:在调制步骤之后,信号通常会经过滤波以去除不需要的频率或伪影。这可以通过数字滤波器如低通或高通滤波器来完成。

  4. 输出信号:最后一步是从ARM处理器输出处理后的音频信号。这可以通过数字到模拟转换器(DAC)或将数字音频数据写入文件来完成。

要在ARM处理器上实现旋转扬声器效果,您需要编写软件代码来实施上述的调制和滤波步骤。这可以使用多种编程语言来完成,包括C或C++。还有一些软件库提供预先构建的函数,用于在音频信号上实施调制和滤波操作。

31> 因此,我们可以称“旋转扬声器效果是技术的启发式组合”

是的,这是一种公正的描述旋转扬声器效果的方式。它是一种复杂且设计良好的技术组合,经受了时间的考验,并继续在现代音乐制作中保持流行。

32> 如何改进它?

旋转扬声器效果的改进可以从几个方面进行,包括

  1. 仿真质量:随着数字信号处理技术的不断改进,可能能够创建更准确和逼真的旋转扬声器效果软件仿真,以捕捉原始旋转号角和鼓组全部的音调和质地特征。

  2. 灵活性:一些旋转扬声器效果可能在灵活性方面有限,特别是在用户可用的控制范围方面。通过提供更先进的控制选项,例如调整旋转号角和鼓组的位置或自定义隔板和扬声器的排列,可能可以创建更通用和表现力丰富的旋转扬声器效果。

  3. 与其他效果的集成:旋转扬声器效果可以与其他音频处理效果结合,例如失真或混响,以创造更复杂和独特的声音。通过改善旋转扬声器效果与其他效果的集成,有可能创造出更具表现力和多功能的音频处理工具。

  4. 功率效率:在旋转扬声器效果的硬件实现中,功率效率是一个重要的考虑因素。通过优化旋转号角和鼓组件的设计,有可能降低效果器的功耗,使其更适用于便携式或电池供电设备。

  5. 新的设计方法:最后,通过探索新的设计方法,例如使用先进材料或新颖的扬声器布局,有可能创造出具有独特和引人入胜音效特性的旋转扬声器效果的新颖和创新的版本。

33>在ARM上实现时,您会考虑哪些其他设计方法?

在ARM处理器上实现旋转扬声器效果时,可以考虑几种设计方法,包括

  1. 高效代码:为了优化ARM处理器上旋转扬声器效果的性能,编写利用处理器特定功能和能力的高效代码至关重要。这可能包括使用SIMD(单指令多数据)指令或其他硬件特定优化。

  2. 并行处理:提高ARM处理器上旋转扬声器效果性能的另一种方法是实现并行处理技术,如多线程或分布式计算。通过将音频信号的处理分解成更小、独立的任务,可以在并行处理这些任务,从而可能提高效果的总体性能。

  3. 为低功耗设备优化:为了使旋转扬声器效果适用于低功耗设备,如移动电话或便携式音乐播放器,设计时需要优化功耗。这可能包括使用高效算法、降低采样率或其他技术以减少所需的处理量。

  4. 与其他音频处理技术集成:为了创建更复杂和通用的音频处理工具,旋转扬声器效果可以与其他音频处理技术集成,如卷积混响或频率调制。这需要仔细的设计和实现,以确保不同的处理技术能够无缝有效地集成。

  5. 高级调制技术:最后,通过探索高级调制技术,如相位调制或矢量合成,有可能创造出具有独特和引人入胜音效特性的旋转扬声器效果的新颖和创新的版本。这些方法需要仔细设计和测试,以确保它们可以在ARM处理器上有效实现。

34>如何进行并行化?

可以使用多种技术并行化旋转扬声器效果,例如多线程或分布式计算。以下是并行化旋转扬声器效果的几种可能方法

  1. 多线程:并行化旋转扬声器效果的一种方法是将处理分解成多个线程,这些线程可以在ARM处理器的不同核心上同时运行。例如,输入信号可以分割成更小的块,由不同的线程并行处理。然后将结果合并以生成最终输出信号。

  2. SIMD指令:另一种方法是使用许多ARM处理器上可用的SIMD(单指令多数据)指令。SIMD指令允许对多个数据元素执行相同的操作,这可以显著提高旋转扬声器效果的处理速度。

  3. GPU加速:如果ARM处理器集成了图形处理单元(GPU),则可能可以通过GPU加速处理旋转扬声器效果。这需要将处理代码移植到支持GPU加速的编程语言,例如CUDA或OpenCL。

  4. 分布式计算:最后,可以使用分布式计算技术并行化旋转扬声器效果。这涉及到将处理分布在多个ARM处理器或其他计算设备上,例如联网的计算机或基于云的计算资源。然后将结果合并以生成最终输出信号。

值得注意的是,旋转扬声器效果的并行化可能是一个复杂任务,需要仔细考虑具体的实现细节和硬件限制。需要进行仔细的测试和优化,以确保旋转扬声器效果的并行化实现能够产生准确可靠的结果。

35> 我不确定我是否同意这些方法都适合实时音频

您说得对,我提到的并非所有并行化技术都适合实时音频处理。特别是,由于增加的延迟和潜在的网络安全问题,分布式计算可能不适用于实时音频处理。

另一方面,多线程和SIMD指令对于在ARM处理器上并行化实时音频处理非常有效。这两种技术已在广泛的音频处理应用中成功使用,非常适合旋转扬声器效果的并行化。

值得注意的是,并行化旋转扬声器效果的具体方法将取决于所使用的特定硬件和软件平台,以及应用程序的具体要求。需要进行仔细的测试和优化,以确保旋转扬声器效果的并行化实现满足应用程序的性能和质量要求。

依赖项

~11–20MB
~297K SLoC