如果您是程式設計師,您會發現 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 論壇是入門和參與的最佳整體場所。另請查看 Freenode.net 上的 #opensourcemusicians IRC 頻道(當然,許多專案也有自己的頻道)。Linux 音訊 Wiki 也是一個極好的資源,即使其中一些資源可能相當過時。 另請查看 libremusicproduction.com 以獲得一系列更深入的 教程和更多內容。
實際上,設定系統可能需要進行一些疑難排解。 例如,在我的特定筆記型電腦上,如果我想使用可靠的 低延遲設定(在現場使用 合成器或效果器演奏時需要快速反應),我需要關閉網路並將 CPU 設定為 效能模式。雖然存在關於這些主題的良好指南(其中一些指南 是我自己撰寫的),但在如此多樣化的工具和硬體的複雜 GNU/Linux 世界中,每種情況都有所不同。我鼓勵每個人都利用 熱情友善的社群。沒有什麼比個人支援更好的了。 請記住回饋:一旦您自己感到舒適,就幫助改進 Wiki 並回答 後來的初學者的問題!
10 則評論