如果您是一名程序员,您会发现 GNU/Linux 系统非常强大且稳健。但在视觉艺术、视频、商业或游戏等领域,您会发现一些工具具有很有前景的潜力,但也有许多错误、怪癖和挑战。在大多数情况下,您可以完成您需要的任何事情,但设置和学习曲线可能不如专有系统上的专有选项那样顺畅。
在本文中,基于我今年在 SCaLE 14x 上的演讲,我们将介绍为音乐制作配置 Linux 系统的基础知识,重点介绍哪些效果最佳,并承认挑战,并就如何寻求帮助提出建议。
入门
硬件
要开始音频制作,我们需要一些扬声器(耳机也算)。要使用计算机完全生成的以外的任何声音,我们也需要一些声音输入。较旧的 Linux 系统使用 OSS(开放声音系统),而较旧的音频接口和带有 Firewire 的计算机使用 FFADO,但对于今天的几乎所有人来说,重点是 ALSA:高级 Linux 声音架构。
值得庆幸的是,ALSA 是 Linux 内核的一部分,因此作为最终用户,您无需了解太多关于它的信息。您只需要知道您的硬件是否受支持。大多数计算机的内置硬件都可以工作。为了获得更好的声音以及与吉他、麦克风和其他音乐设备的兼容性,更专业的音频接口更有意义。任何“即插即用”接口都可以工作,其中包括许多基本的经济实惠的选择。也支持相当数量的高端接口。对于具有一流音质的选项,我在 Focusrite Scarlett 系列上取得了成功。由于仅由志愿者更新,因此最容易访问的受支持接口列表很少完整或最新,但论坛和 IRC 上的友好人士可以提供帮助。
内核设置
对于大多数音乐制作所需的低延迟定时,建议使用低延迟内核(但不是绝对必需的)。最好的选择是安装预先打包的内核,作为专门用于音乐的系统的一部分。
发行版和仓库
入门无需专门的音乐系统。大多数入门软件几乎可以在任何标准的 GNU/Linux 系统上运行(任何人都可以调整任何系统以实现任何目标,如果您想花时间这样做的话)。但是,专门的音乐系统提供了许多好处。
我使用 KXStudio,这是一个出色的仓库集合,可以轻松添加到任何基于 Debian(因此也基于 Ubuntu)的操作系统中。添加 KXStudio 仓库后,只需简单更新并安装推荐项目,您将获得一个完整的系统,其中包含低延迟内核、大量优秀的程序、专用的管理工具套件以及大量的效果器、插件和合成器。KXStudio 的维护者(实际上主要是一个人)在保持事物更新和响应请求方面做得非常出色。请记住,这基本上是全职完成的志愿工作,因此请考虑捐款以维持其发展。
Aaron 的个人定制 KXStudio 桌面
还存在其他以音频为中心的软件包和发行版,特别是 AV Linux 和 Fedora Jam。多年来已经制作了其他几个系统,但大多数系统都没有更新或处于活动状态。
关于 100% 软件自由的说明:虽然以音频为中心的发行版 Musix 和 Dynebolic 获得了 FSF 的认可,但拥有 100% 自由/自由/开放音乐系统的最新方法是使用核心 Debian 系统或 FSF 认可的 Trisquel 发行版,并将 KXStudio 仓库添加到您的安装中。
JACK
虽然 ALSA 直接与硬件配合使用,但其他音频层管理来自各种程序的所有信号,并将这些信号发送到 ALSA。某些程序直接支持 ALSA,而其他程序则与 PulseAudio 或 KDE 的 Phonon 等系统配合使用,后者与 GStreamer 或 VLC 后端配合使用。所有这些混乱基本上意味着您的系统设置以不同的方式与不同的程序交互,具体取决于它们对这些框架的支持和交互程度。
主要的音乐专用音频系统称为 JACK。它提供了一个后端,该后端支持音频(和 MIDI,用于发送合成器控制信号的系统)与任何受支持程序之间的任意路径。借助 JACK,合成器输出可以进入混响插件,然后再进入录音程序,同时单独的鼓程序也在播放。JACK 可以启动和停止来自多个程序的所有回放,其中任何一个程序都可以设置为主计时器。
JACK 遵循 Unix 原则,即拥有执行一件事或几件事的小程序,而不是庞大的全功能程序。当然,这需要严肃的管理工具来将所有内容整合在一起。KXStudio 提供了 Cadence GUI 工具套件,许多人在 KXStudio 之外也使用它。最以 JACK 为中心、遵循 Unix 原则的工具来自 Non 系列的作者 Jon Liles。它们提供了单独的混音器工具、录音工具、音序器和一个会话管理器。会话管理器是一种工具,用于记录您在 JACK 中拥有的所有不同设置和连接,并将它们保存为一个集合,以便您可以关闭并在以后自动重新打开所有这些独立程序,并以相同的方式进行设置。
使用 Cadence 工具设置 JACK 连接
不幸的是,虽然 JACK 和模块化的概念很有意义,但工具的支持水平和质量却不一致。某些组合工作完美且流畅,但某些程序提供不完整的支持甚至不支持。某些程序支持 JACK,但它们的设计鼓励用户无论如何都在内部完成所有操作。
GNU/Linux 音乐制作的初学者应尝试理解 JACK 的基本概念。这将帮助他们理解可用的音乐工具的总体生态系统,无论他们是否选择接受模块化方法。
在我的下一篇文章中,我将重点介绍支持 JACK 但也可以独立使用的程序。
社区支持
Linux Musicians Forum 是入门和参与的最佳场所。还可以查看 Freenode.net 上的 #opensourcemusicians IRC 频道(当然,许多项目也有自己的频道)。Linux Audio Wiki 也是一个极好的资源,即使其中一些内容可能已经过时了。 另外,请查看 libremusicproduction.com,以获取更多教程和更多内容。
在实践中,设置您的系统可能需要进行一些故障排除。例如,在我的特定笔记本电脑上,如果我想使用可靠的低延迟设置(在现场演奏合成器或效果器时需要快速响应),我需要关闭我的网络并将我的 CPU 设置为性能模式。尽管存在关于这些主题的优秀指南(其中一些指南是我自己撰写的),但在如此多样化的工具和硬件的复杂 GNU/Linux 世界中,每种情况都各不相同。我鼓励大家利用热情友好的社区。没有什么比个人支持更好。请记住付出回报:一旦您感到舒适,就帮助改进 Wiki 并回答后来新来者的问题!
10 条评论