玩转循环:Linux 音乐人的性能循环器
在音乐中,循环是指一段音乐持续重复,直到收到停止或移动到下一段的信号。循环可以分配给单个乐器或一组乐器。在作曲上,循环有多种用途。例如,它们可以作为构成作品的形式低音模式,或者它们可以提供一系列长而持续重复的和弦,用于定义独立创作的低音和旋律线的和声。对于许多基于计算机的音乐创作者来说,循环最流行的实现是鼓循环,这是一种由一个或多个小节的打击乐声音组成的节奏模式,可以不变地重复用于简单的线条,或者与其他循环混合和匹配以获得更逼真的变化。
现代音乐创作者在另一种背景下使用循环。性能循环器是记录音频信号并将其捕获到缓冲区中以用作重复循环的机器,表演者可以在其上即兴创作新的音乐线条甚至另一个循环。性能循环器记录多个循环,从而为用户提供了实时进行加法作曲的机会。所有性能循环器都具有一些基本特征,例如录音、文件加载和各种传输机制。典型的传输控制包括开始、停止和暂停,有些循环器还增加了反向和变速播放控制。其他常见的控制功能包括静音和独奏状态、触发器和单次采样播放器,以及始终流行的撤消/重做功能。不太常见的功能包括内置合成器、音频效果处理、时间/音高伸缩以及在播放期间操纵循环的各种其他方法。
现代循环器的另一个重要功能是能够通过 MIDI 或其他控制协议(如 OSC)对系统进行外部控制。对于现场表演,此功能至关重要 - 需要免提操作,以便表演者可以专注于乐器或人声部分,其中一些部分可以由循环器录制和处理。性能循环可以很快变得非常复杂,表演者需要方法来轻松配置和安排他们的循环。使用循环进行表演允许各种各样的舞台场景,从针对自由选择的循环进行全力即兴创作,到严格定义的循环序列以伴奏先前创作的部分。
可能没有正式标准化的循环表演方式,但可以描述一些典型的操作。表演者可能会决定让循环器播放在表演期间选择的各种循环,方法是使用 MIDI 脚踏开关。在某些循环期间,他可能会录制额外的部分用于循环,或者他可能决定简单地利用循环作为或多或少详细的伴奏。循环可以是任何速度,因此可以创建具有不同乐器和定时的循环的复杂多变的纹理。如前所述,循环可以按随机或有序的顺序调用,并且可以单独播放或作为材料堆栈播放。在任何这些场景中,对循环器的外部控制都是必要的。顺便说一句,录制的材料可以是任何声音,性能循环器已经发现了超出纯音乐的用途。
Linux 循环器这里介绍的每个循环器都包含上述基本功能集,并且每个循环器都增加了自己独特的吸引力。它们都根据 GPL 获得许可,并且是完全免费和开源的软件。
自由驰骋 (Freewheeling)J.P. Mercury 的 FreeWheeling 旨在最大限度地易于在现场表演中使用。该程序支持一些键盘控制,但仅支持少数鼠标操作。为了获得最佳效果,Freewheeling 需要某种外部控制界面。该程序的作者使用 Behringer BCF-2000,这是一款支持 MIDI 的混音器,带有可分配的按钮和推子,但任何支持 Linux 的 MIDI 控制界面都应该与 Freewheeling 配合使用。
您可以仔细阅读 功能列表,这些功能使 Freewheeling 在性能循环器中独树一帜。它的一些吸引力包括集成版本的 FluidSynth 音色库合成器、对多人即兴演奏的多个输入的支持,以及捕获和触发多个非对称循环的能力。除了其内部功能外,Freewheeling 还是一个基于 JACK 的应用程序,可以连接到数字信号处理器 (DSP) 单元、硬盘录像机或其他 JACK 客户端。

当 Freewheeling 打开时,您将看到图 1 中显示的用户界面。在执行任何其他操作之前,按 / 键以调出 Freewheeling 的内部帮助面板。您无需一次学习所有内容,但您需要知道 Tab 键循环浏览 Freewheeling 的默认 UI,而 Esc 键退出程序。默认界面可能包括 Behringer BCF-2000 控制界面、通用 MIDI 键盘、跳舞毯系统或 PC 键盘的布局。您可以在 $HOME/.fweelin/basics.xml 文件中编辑这些和其他 Freewheeling 的默认规范。不要被 XML 吓到 - 作者为普通用户提供了关于其使用的大量注释,它是为您的目的定制 Freewheeling 的关键。
这些界面是简单的控制界面。例如,图 1 中看到的 PC 键盘界面将循环录音机/播放器分配给 QWERTY 布局的每个键。如果我按下 Q 键,GUI 中相应键上会出现一个圆圈。一旦我开始演奏 - 或唱歌或朗读或发出任何类型的声音 - 圆圈就会显示录制的波形。再次按下 Q 键,录音停止。现在,该键保存循环,以便我在按下它时随时调用。对其他键重复此过程,很快您就会拥有一个循环库,可以随意混合和匹配。简单。哦,您可能还想知道 U 键会擦除上次录制的循环。
文档包括程序内的上述帮助页面、一些介绍其控件和操作的视频、邮件列表(带有存档)和 Wiki。这些视频与当前版本不同步,但基本性能技术在各个版本中保持不变。我还在 YouTube 上找到了一些有用的演示视频。一旦您对程序的控件有了一些了解,它就非常容易使用。当您与 Freewheeling 一起即兴演奏时,也很容易消磨时光。
在各个方面,Freewheeling 都是为现场表演而设计的,它首先是一种即兴演奏者的乐器。唉,我没有 Behringer BCF-2000(尚未),我的 MIDI 键盘被收起来了,而且我不太可能拥有跳舞毯。我仍然设法使用 PC 键盘来控制 Freewheeling 的循环录制和播放功能,度过了一段美好的时光。我还用外部 MIDI 音序器控制的内部合成器录制了一些循环。这种安排还可以,但我认为如果使用键盘或其他交互式控制器,我会玩得更开心。此外,我找不到如何加载和播放现有声音文件,尽管如果我正确理解文档,应该可以使用现有声音文件作为背景循环。也许一位好心的读者可以告诉我们它是如何完成的?
我大约五年前写了一篇 Freewheeling 简介。该程序的 新闻页面 记录了它从那时到 0.6.1 版本的演变过程,这是最后一个公开发布的版本,也是本文测试的版本。作者表示他不太可能继续维护 Freewheeling,但代码库是开源的,并根据 GPL 许可,以造福未来的开发。尽管如此,Freewheeling 在当前条件下当然是可用的,并且绝对可以评价为一个独特而强大的音乐创作程序。
SooperLooperJesse Chappell 的 SooperLooper(图 2)为性能循环器提供了一个更传统的界面,但该设计隐藏了一个客户端/服务器模型,该模型将用户界面与循环器的引擎分离。sooperlooper 命令调用 SooperLooper 服务器(图 3),而 slgui 命令调用图 X 中看到的 GUI 客户端。如果服务器尚未运行,GUI 将自动调用服务器。


默认情况下,SooperLooper 打开时只有一个循环器处于活动状态,但您可以从“会话”菜单中添加或删除循环器。图 2 显示了激活了四个循环器的 SooperLooper,每个循环器都包含各种录制和播放功能以及一些内置的音频修改工具。可以加载声音文件以用作背景循环,并且可以使用各种性能控件来控制播放。SooperLooper 的 GUI 可以通过鼠标操作,但所有 UI 操作都可以绑定到键盘快捷键。唉,鼠标和计算机键盘都不能为程序提供最令人满意的控制界面。与 Freewheeling 一样,当 SooperLooper 的界面在外部控制界面的命令下时,它的真正优势才开始显现。
为了进行简单的测试,我在第二台机器上运行了一个音序器,并使用一些 MIDI 音符和控制器事件编写了一些简单的音轨。然后我打开 SooperLooper 的“会话/首选项”对话框,单击“MIDI 绑定”选项卡(图 4),并将我的音序器音轨中的各种 SooperLooper 功能分配给 MIDI 事件。我使用 QJackCtl 中的 MIDI 连接面板将音序器的输出路由到 SooperLooper - 我有没有提到 SooperLooper 是一个精通 JACK 的应用程序? - 音序器音轨忠实地按照我的自定义绑定控制 SooperLooper。这种方法实现了用鼠标和/或计算机键盘不易获得的效果,例如多个循环同时响应单个命令。

SooperLooper 会话可以保存以供以后调用。您可以选择将声音文件包含在会话中,也可以选择仅保存控制配置。
SooperLooper 网站上提供了丰富的用户级文档,但如果您需要更多信息,您可以访问 SooperLooper 论坛 并寻求该组的指导。在 YouTube 上搜索程序名称返回了一些 SooperLooper 运行的精彩示例。这些视频中的大多数都是使用 OSX 版本的 SooperLooper 录制的,但它们对 Linux 用户来说也是有用的教学资源。
我询问了 Linux 音频用户列表的成员,他们推荐什么硬件来控制 SooperLooper。该组一致的获胜者是 Behringer FCB-1010,这是一组脚踏控制的开关和踏板,用于发送 MIDI 消息和控制器流。Behringer 设备可能是最受欢迎的选择,但快速浏览 SooperLooper 用户论坛后,很明显该程序也兼容其他硬件。我已经订购了一个 FCB,但在等待它到货时,我将继续试验音序器和 PC 键盘对 SooperLooper 许多功能的控制。
Kluppe根据开发者 Dieter Kovačič 的说法,Kluppe 是一款循环播放器和录音机,专为现场使用而设计。这说得很谦虚。Kluppe 很容易就和 Freewheeling 或 SooperLooper 一样出色,并且像这些程序一样,它具有专为现场表演循环器的操作而设计的独特 UI。

在没有指定现有项目的情况下启动时,Kluppe 打开时没有激活任何循环器。对于我的第一个简单练习,我打开了一个 discstream,即我添加了一个鼓循环声音文件用于循环播放,然后我打开了一个空缓冲区用于录音。我添加了两个循环器,并将一个 discstream 或缓冲区分配给每个循环器(图 5)。我启动了鼓循环,启动了另一个带有空缓冲区的循环器,并录制了一条贝斯线,直到我对结果感到满意为止。不幸的是,我的录音在播放期间不同步,但由于 Kluppe 的波形显示,我能够将播放限制在我即兴演奏的特定部分,这是一个非常方便的功能。Kluppe 有一些有趣的录制和播放模式,包括一种自定义模式,该模式将用户设计的曲线(图 6)应用于播放指针的速度或位置。我还没有找到它的音乐用途,但我玩得很开心。Kluppe 还包括粒度控制。我承认我还没有完全理解它,而且当我实时玩弄控件时,JACK 绝对不喜欢它,尽管我的 JACK 设置可能对此有影响。我会继续试验,直到弄清楚如何使用它。

您的工作可以以其所有细节保存在 Kluppe 项目文件中。您还可以将任何缓冲区的内容导出为声音文件,以便在 Kluppe 中进一步使用或在 Audacity 或 Sweep 等编辑器中处理。
顺便说一句,开发人员周到地包含了一个不需要 GUI 的 Kluppe 版本,代号为 Klopfer。默认情况下不构建它,但简单的 make klopfer 后跟 make klopfer_install 编译并安装它。开发人员在他在舞台上使用的定制迷你 ITX 计算机中使用它,当然它也可能对视障音乐家有用。
Kluppe 的文档包括在单个网页上呈现的全面且写得很好的介绍。一旦我理解了它的基本操作,我发现该程序非常容易使用,并且像本文中描述的所有循环器一样,您使用 Kluppe 的次数越多,您就会发现它的用途越多。
我构建并测试了 0.6.14 版本,这是 Kluppe 最近的公开发布版本。开发进展缓慢 - 自 2009 年 4 月以来代码库没有进行任何更改 - 但没有迹象表明它已经消亡。我当然希望开发人员或其他某人计划继续其发展,它是一个太好的应用程序,不容许被忽视。
推荐配件在离开循环器领域之前,我想推荐一些实用程序,以帮助您更好地利用现有的循环。
节拍切片器根据用户指定的节拍定义将声音文件分解开。可以将生成的音频片段重新组合以创建原始材料或多或少可识别的变化,或者可以保存以用于其他目的。据我所知,Predrag Viceic 的 Freecycle 是 Linux 的第一个节拍切片器,Smasher 是下一个。强烈推荐这两种工具用于循环准备。唉,Freecycle 似乎已经变成了废弃软件,但 Smasher 的开发在 2009 年持续进行。
如果您需要准确同步多个文件,您可能需要时间伸缩实用程序。Rubber Band 是我完成这项工作的首选工具,但当我想获得一些怪异效果时,我会使用 Paulstretch,这是一个用于极限时间伸缩的程序。请记住,循环可以是任何声音,无论其怪异程度如何。
结尾本文中介绍的性能循环器并非 Linux 上唯一可用的循环器。我想回顾一下 Stephen Sinclair 的 LoopDub(图 7),但我还没有让它的音频输出正常工作。可能还有一些其他的 Linux 循环器潜伏在那里。如果您知道我应该在这里提及的其他循环器,请告知。

下次我将回来介绍一些我最近发现的精巧的琶音器。在此之前,我希望您尝试一下本文中评测的程序。它们的乐趣因素非常高,但它们也能够进行严肃的应用。所以继续吧,下载所有这些程序,并尽情玩转循环吧。