您好,欢迎来到音频设备应用商城音频应用
首页 > 硬件资讯 > Arch Linux 打造成音乐工作站的几条经验

Arch Linux 打造成音乐工作站的几条经验

2021-02-21 20:47:19

Arch Linux 打造成音乐工作站的几条经验

Arch Linux 打造成音乐工作站的几条经验
作为程序员+音乐人二合一,我的系统环境横跨Windows和Arch Linux。原本Arch Linux只用来做开发,但这么强大的系统,我总觉得它还有无限的可能性还没有发掘出来,比如,做音乐。

相较于Windows,作为开发者首选的系统之一,Arch Linux有以下难以比拟的优势:

运行速度快,内存占用量较小,轻便自在;
Pacman软件库,应有尽有,安装开发工具轻而易举;
安全可靠,不怕病毒;
对老电脑、老设备分外友好,十年前的ThinkPad X200照样做主力。
不过,不管是哪个发行版,Linux总有一点比不上Windows和MacOS,就是音乐制作——很少有音频软件厂商能够提供原生支持Linux的音乐制作工具。尤其是Native Instruments这样的业界巨头,只专注于Windows和MacOS,不会为Linux提供任何支持。实在是可叹。

幸运的是,开源的力量是无穷的,既然Linux能普及,总有大佬在填补这方面的空白。各种适用于Linux的音乐制作工具链应运而生,从底层驱动级别的JACK,到对标业界标准插件规范(VST、RTAX、AAX、DX、AU)的LADSPA,甚至完整的DAW——LMMS、Ardour、REAPER for Linux,应有尽有。从此,Linux不再是没有音乐人造访的荒漠。


Linux作为音乐制作环境的必备要求
要想把Linux打造成音乐工作站,需要进行以下方面的配置:

配置好低延迟的音频接口——JACK。
安装必要的音乐制作软件。
安装兼容环境——Wine、LinVST,用来使用Windows下的VST插件。

第一:安装与配置JACK
要把你的Arch Linux打造成音乐工作站,首先要做的就是配置音频服务——JACK。JACK是一套高性能、低延迟的音频服务程序,它基于Linux底层的ALSA,可为音频应用程序提供低延迟的音频回放、录制支持,相当于Windows下的ASIO,以及MacOS下的CoreAudio。

安装哪个版本的JACK?

一般的发行版会提供两个版本的JACK:

JACK1:包名为jack,用C语言编写的最初版本:
只有音频服务功能
对系统要求苛刻,需要配置用户权限、realtime权限才能使用
独占控制声卡,其他程序无法再播放音频
JACK2:包名为jack2,用C++重写的版本:
支持DBus协议控制
支持将PulseAudio、ALSA重定向到JACK,从而兼顾其他使用这两种音频服务的程序
无需配置权限即可使用
先给出结论——选择JACK2,不要选择JACK1!
虽然JACK1是最初版本,包括Manjaro、Artix Community在内的多款发行版都有预装,但它并不是开箱即用的。想要使用JACK1,首先要配置realtime权限,然后再把当前用户添加到audio用户组中,重新登录后再通过QJackCtl这类工具来手工启用JACK服务,非常麻烦。

加之,JACK,和PulseAudio是独占访问声卡的,其中PulseAudio是各大Linux发行版和各种应用首选的音频服务,这就意味着一旦开启JACK,其他应用程序就无法出声,甚至会引起一些无法预料的错误。

相较于此,重写的JACK2则解决了上述两大硬伤。首先,JACK2使用了全新的架构,默认情况下无需依赖realtime权限和audio用户组即可运行,和PulseAudio一样都能直接运行于用户空间(区别于root权限下的系统服务)。其次,开发者设计了一套“桥接(Bridging)”机制,能够把ALSA和PulseAudio重定向到JACK里来,从而保证其他使用了PulseAudio的应用程序仍能正常使用,听歌做歌两不误。

显然,首选的JACK版本非JACK2莫属。

安装与启动JACK2

首先安装JACK2,以及JACK2的音频控制面板Cadence:

sudo pacman -Ss jack2 cadence

Cadence是一款优雅的JACK2控制面板,功能全面。首先打开它:


图1 Cadence主界面

然后点击【JACK Status】部分的【Start】,启动JACK服务。若启动成功,则该部分会显示以下内容,表示JACK2启动成功,并给出当前的运行参数。


图2 JACK启动成功后,Cadence显示的状态

启动成功后,PulseAudio到JACK的桥接功能也会自动启用。打开PulseAudio桥接后,系统会多出一个音频设备,为“PulseAudio JACK sink”,是把PulseAudio重定向到JACK的设备,选择它即可让原先使用PulseAudio播放音频的程序都通过JACK来输出音频。

若不需要PulseAudio桥接,可以在Cadence下方的【JACK Bridges】的【PulseAudio】选项卡内手动开关这个功能。


图3 启动JACK2后,KDE音量控制里多出的音频设备

提示:

可以勾选【Auto-start JACK or LADISH at login】,设置Cadence与JACK2服务的自启动。
桥接启用后,原有声卡设备(见图3上方)的音量控制仍然起作用,用于控制输出的主音量。

我的喜欢我的喜欢(0)