Revision 3 as of 2008-04-29 12:30:20

Clear message

This page will try to describe the process of getting started with music production in Linux in a user-friendly way.

Hopefully this will be useful for people that have no or little experience in the area, or producers switching from a Mac/Windows environment.

Note: This guide is based on Ubuntu 8.04, not Ubuntu Studio. Please add comments where the two differs.

First step - Platform for production

Real-time kernel

The first vital step to a working environment is to have a real-time kernel.

This makes sure that the audio recorded gets the highest priority possible so the audio quality will be good without skips.

To install this kernel, open up a terminal and run:

sudo apt-get install linux-rt

Also, we need to give the audio-group the rights to set real-time priorities, lock a big amount of memory and prioritize processes in general.

In the terminal, issue these commands:

sudo su -c 'echo @audio - rtprio 99 >> /etc/security/limits.conf'
sudo su -c 'echo @audio - memlock 250000 >> /etc/security/limits.conf'
sudo su -c 'echo @audio - nice -10 >> /etc/security/limits.conf'

Now, reboot the system and boot into your -rt kernel (should be default).

This kernel is the same as the standard kernel but with real-time support, so everything should be as normal and the kernel can be used even when the machine is not used for music production.

JACK

When it comes to the audio hardware in Linux, the kernel and ALSA take care of getting it to work.

But to have a transport channel for different audio applications to "talk" to eachother (audio sequencer and drum machine, for example) and to optimize the sound processing to lower latency, the JACK system is used.

The easiest setup would be to have a secondary soundcard with which JACK will be used.

If only one soundcard is present, the sound daemon for Gnome needs to be shut down for JACK to use it.

FIXME: Add some information about this procedure

To be able to configure and start the JACK daemon through a graphical interface, start up a terminal and install QJackCtl with this command:

sudo apt-get install qjackctl

This application will then be found through Applications -> Sound & Video -> Jack Control.

Configuration

The configuration depends on the capabilities of the soundcard, but be sure to check the "Realtime" box and select the proper input and output devices.

Common configurations include "Force 16bit" and 44100 sample rate.

Once the basic configuration is done, start the JACK daemon and install an audio sequencer.

XRuns

https://help.ubuntu.com/community/UbuntuStudio/DapperPreparation

Ardour

Alternative replacement software: Rosegarden

Function names: Digital Audio Workstation/Audio sequencer

Windows/Mac equivalent: Cubase, Logic, GarageBand

The central place for music production.

To install, enter that convenient terminal and issue:

sudo apt-get install ardour

Once installed, it will be found under Applications -> Sound & Video -> Ardour GTK2.

Ardour requires a JACK daemon to be running when it starts, so be sure it's started from the previous step.

Second step - Connecting applications through JACK

When audio is recording and playing back as it's supposed to, connecting other applications that can provide drum machines etc could be useful.

Hydrogen

Alternative replacement software:

Function names: Drum machine

Windows/Mac equivalent: EZ Drummer, Reason

Hydrogen is an easy drum machine to get started with, the downside is that it tends to crash when used with Ardour over JACK.

Install from terminal:

sudo apt-get install hydrogen

Connections in JACK Patchbay

https://help.ubuntu.com/community/HowToQjackCtlConnections

Using the JACK transport

Third step - Using filters

LADSPA

DSSI

Fourth step - Using MIDI

Unsorted

  • jamin
  • qsynth
  • seq24
  • vkeybd
  • zynaddsubfx
  • lmms
  • more...