Linux it's far from perfect , but, it own some features that make the audio production very handy and affordable, mostly of the software and audio applications can be interconnected and sync up through Jack turning our desktop in a super-flexible modular workstation.
There are many Linux flavors and in a general sense is not a big difference between a distribution and another, we can turn whichever Linux flavor in a capable OS to audio production.
According with my personal experience some desktop environments have a better performance, and this is due to how they manage the graphical resources, I highly recommend distributions that use KDE, XFCE or lxde as desktop environment, Gnome could be the worst choice and that is because Gnome uses Compiz or Metacity that make extensive use of memory for graphics processing.
I use Kubuntu, it is a ubuntu flavor that use KDE as desktop environment.
In this guide we follow the complete process to set up our Linux on an audio capable operative system.
open a terminal and type:
sudo apt install linux-lowlatency
to install the KXStudio follow the instructions of this link: http://kxstudio.linuxaudio.org/Repositories
sudo apt update && sudo apt upgrade
sudo apt install jackd2
sudo apt install qjackctl
sudo apt install pulseaudio-module-jack
sudo apt install jack-tools
Add your current user to the audio group code:
sudo adduser username audio
Give the audio group real time access editing /etc/security/limits.d/audio.conf
kate sudoedit /etc/security/limits.d/audio.conf
sudo mousepad /etc/security/limits.d/audio.conf
sudo leafpad /etc/security/limits.d/audio.conf
sudo gedit /etc/security/limits.d/audio.conf
change the content of the file to this values:
@audio - rtprio 99@audio - memlock unlimited
Reboot your system. code
All available playback audio devices. code:
The list of available capture/recording audio devices code:
MIDI playback ports devices capabilities code:
the MIDI recording audio ports code:
Jack (Jack Audio Connection Kit ) is a professional sound server daemon that allow you to route audio and MIDI between applications and connect hardware with software.
Qjackctl is a simple application to control the Jack sound server, to launch it open a terminal and type:
On the Qjackctl UI hit "setup" , it will open the Jack audio connection kit setup window.
Press in the Driver selection menu and choose alsa, it will be your audio backend interface to use.
Then, in the Interface selection menu choose your sound device, it could be your integrated sound device or a external hardware, in my setup I own a focusrite Scarlett Solo and I choose this option in the list.
The next step is select the ideal values for the Sample Rate, Frames/Period and Period/Buffer it is very important because find the right relationship between this values will have effect the quality and the performance of our system. While the numbers are higher we will have better audio quality, but it is not so easy, because this will have a direct effect on the latency too.
You can swap different values until you find the ideal values, or you can use this guide to find them:
Finally you must check the "Realtime" option in the setings window and press "OK", all the changes will take effect the next time that you run the Jack audio server.
Open a console and type:
jackd -d alsa --help
It should give you back a list of all available JACK server options of your audio backend.
Mostly of the Linux distribution are setting by default as "powersave" it sets the CPU statically to the lowest frequency within the borders of scaling_min_freq and scaling_max_freq.
To change the mode to "performance" open a console and type: code:
echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
in order to set it back to "powersave" mode, open a terminal and type code:
echo powersave | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
You can create a script to run in performance mode, open a text editor and type:
#!/bin/bashclearecho performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
Save it in the home directory under the name "performance mode" and you can run it in the console with
Is there long list of Digital Audio Workstations available to Linux and is so difficult to decide which one of them is the best for use in our production pipeline, all of them have 'pros" and "cons" and each one has some characteristic that makes it special, but wait a minute, in Linux we do not necessarily have to choose one, we can choose all of them and thanks to the modularity of the Linux audio ecosystem, take the best of each one. So, lets install some DAWs using various ways.
is a hard disk recorder and digital audio workstation application that runs on Linux, macOS, FreeBSD and Microsoft Windows it is released under the terms of the GNU General Public License.
We will install Ardour through apt code:
sudo apt install ardour
Renoise is a digital audio workstation. It lets you compose, edit and record production-quality audio using a music tracker-based approach
to install Renoise in our system we can download a demo version here
Copy the .tar file in the system location that you prefer and press right mouse button over the file, select "extract archive here"
Open a terminal an navigate through your system using the "cd" command, in my case the renoise folder is in the Download, then the code is:
Then execute the install.sh with sudo code:
sudo sh install.sh
Quite easy too
Intuitive, Single Screen Interface with Drag & Drop Functionality. Specifically Designed for Music Composing, Recording, Mixing and Sharing. You can see the complete list of features and download Tracktion7 here:
Press double mouse click the .deb file, it will open your store aplication, and press "Install"
A binary version of VCV Rack is available to download from https://vcvrack.com/, but we build our own executable from the source code. First of all we need install some aditional software to download and d build the code, as well as some dependencies code:
sudo apt install git curl cmake libx11-dev libglu1-mesa-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev zlib1g-dev libasound2-dev libgtk2.0-dev libjack-jackd2-dev jq
Now we download (clone) the git repository code:
git clone https://github.com/VCVRack/Rack.git
It will create the Rack folder in the home directory. type the code below to enter into the Rack directory. code :
Build dependencies locally. code:
Buid Rack code:
You can run rack code:
The KXStudio meta-packages are a big colection of software that can be installed at once.
The main meta-packages are Audio, Audio-Plugins, Graphics and Video. The Audio-Plugins meta-package is also split into plugin categories, for anyone that wants more plugins, but not actually more applications. You can install this packages with the apt command to install the vst meta-package use the code bellow code:
sudo apt install kxstudio-meta-audio-plugins-vst
If you want install another one meta-package simply use: "sudo apt install + meta-package name"
WIP feedback to effetagroove at gmail dot com