Table of Contents

Introduction to music creation in Linux

This is a brief overview of Linux for music and multimedia creation. More in-depth information is provided on any referenced pages.

Linux as a music tool

Linux is a modern and stable operating system suitable for music creation. It offers low-latency audio, and support for many audio and MIDI devices.

Although Linux music software selection is not as extensive as with Windows or OS X, the majority of software is free and constantly improving.

If you are new to Linux, have a look at why using Linux.

Distributions

Most musicians use a version (ie, distro) of Linux ready-made for multimedia work. There are numerous choices. Some distros may use a different desktop. Some are tailored to run on older computers. Some frequently update software, and others are more conservative.

What most music distros do is automatically install/configure software that usually isn't installed with a non-music-oriented distro. Such software includes JACK, a DAW, a MIDI Sequencer, a session manager, firewire interface support, lots of plugins, and other music software.

Audio interfaces

Many USB, PCI, and Firewire audio cards/interfaces work with Linux. Support for PCI and USB cards, as well as motherboard audio, is built into Linux itself. No additional drivers are needed. Firewire cards are supported via the Ffado project's drivers, which must be installed separately.

MIDI devices

All class-compliant midi devices work with Linux out-of-the box. Midi keyboards as well as USB-midi interfaces work without problems. No additional drivers are needed, except midi connections on Firewire devices, which use Ffado drivers.

MIDI devices should also “just work” in a web browser in Linux. This article on tangiblejs is a good intro on web-based apps that can interface MIDI hardware.

JACK (Audio Connection Kit)

Like AudioBus on the iPad, JACK is a patchbay type system that allows you to “connect” the audio/MIDI inputs and outputs of various Linux music programs to each other, and to hardware devices.

To configure the connections, and control JACK, you can use a graphical program such as QJackCtl or Cadence. There are other, more elaborate graphical programs to manage JACK connections/settings, including programs that can save and load numerous JACK setups. These programs are often called “Session Managers”.

Plugins

In addition to connecting separate music programs via JACK, there are are many plugins that can be directly loaded by a music program.

Commercial software

There are few commercial software titles available on Linux. Most of them are closed source.

How do I get started?

Community

The Linux audio community is lively, and organized through mailing lists, IRC, and the Linux Musicians forum. There are also many blogs and regional community sites.

Aside from the wiki, there are numerous ways to get in touch with us:

Web resources