Biz & IT —

Making music in Linux and beyond

When it comes to music production tools, there are plenty to choose from for …

You can do a lot with free open-source software, also known as FOSS. Musicians with a yen for Linux are in luck; the array of choices for creating, editing, producing, and publishing music using nothing but FOSS software is staggering.

One way to get your hands on a plethora of audio tools is to run the Ubuntu Studio distro, which comes preconfigured for real-time audio processing and includes every studio tool under the sun. Failing that, there are the ubuntustudio-audio and ubuntustudio-audio-plugins virtual packages in Ubuntu, which will install 54 and 18 specialized packages, respectively. Other alternatives include the Musix distribution and the low-end hardware distro dyne:bolic, but Ubuntu Studio has the largest toolkit in the genre and enjoys the widest support as well.

Pick your favorite multimedia distro and go nuts, or just install the applications you want to try out, one RPM or DEB package at a time.

To cover it all in useful detail would take a book, so we'll spare you most of the gory details. Instead, this article will focus on a few of the leading suites used to actually make music—multi-track MIDI sequencers with the ability to add live audio tracks such as guitar strums and voice.

You still don't know JACK

Having a lot of tools available lets you work in the grand tradition of Unix-like operating systems, chaining specialized programs together to perform complicated tasks. The pipe operator in the audio world is the JACK audio server, which lets you route inputs and outputs of myriad different flavors to whatever JACK-enabled tool you like. For example, you can use JACK to route MIDI inputs to a software synthesizer, then a flangers and a compression effect, and then on to your sequencer suite of choice. From there, you'd then pipe the finished song to a separate mixer program and an output tool to write the song to disk in your favorite audio file format. And all of this is accomplished in real time, without adding ugly latency anywhere in the process chain. That's the magic of JACK.

Don't be scared; most of these connections happened automatically
Don't be scared; most of these connections happened automatically

On the downside, JACK can be a beast to configure just right. It has to play well together with the underlying ALSA audio mechanism, and there is definitely a learning curve to routing your tool chains effectively. But every major music tool for Linux works with JACK, and many outright depend on it and refuse to run any other way. It's a mixed blessing, but a necessary tool at your belt.

To get a MIDI workstation running properly, you need a few things:

  • A low-latency kernel, also known as preemptive or real-time kernels. The old preemptive patches have long ben a part of the standard kernel distribution, so this is mostly a historical note unless you're running really old versions of Linux
  • Real-time priority permissions for audio applications, as explained by the Rosegarden team
  • Properly configured ALSA settings with JACK ports
  • JACK set to real-time operation and started before you fire up any of your sequencers, soft synths, or effects. The routing between these things can be done by hand, but is often handled automatically by the startup scripts of your applications
  • Either an external bank of MIDI instruments, connected via USB MIDI controllers, or the TiMidity software MIDI handler. TiMidity is a great piece of software, but be warned that it sometimes decides to eat all available processor time which is a performance-killing problem when the process has real-time execution rights
  • A MIDI keyboard isn't exactly required if you're planning to enter notes by hand or if you prefer virtual keyboards. However, most musicians probably prefer performing their parts over the more mechanical note-by-note entry method. We're not judging, though.

The purpose of introducing JACK and real-time operations is to make your audio subsystem more responsive. You want to hear a note exactly when you press the B-flat key, not some unspecified interval later. Glitches can be repaired after the fact through quantization and manual tinkering, but then you lose some of the natural imperfections that make a performance feel real—and you never even get a chance to do these things if you're using your audio workstation to perform live. Latency is a musician's worst enemy, in other words.

The JACK project keeps a list of JACK-aware applications where you can dive in to find the tools you're looking for. However, even that list is incomplete as the very JACK-friendly LMMS sequencer isn't included, and I'm sure there are other omissions. Ubuntu Studio probably has you covered either way.

Working with Ardour and Audacity

I'm not talking about a studio attitude, but about two of the finest tools in your toolbox.

Ars ran a roundup of FOSS audio editors five years ago, wherein most of the focus was placed on Ardour and Audacity. Those are still the two leading editor and multitracker packages in the game, so not much has changed.

Except, of course, that everything has changed.

Audacity still can't play or edit MIDI files, but it has removed one of the biggest knocks against it by adding JACK support. ALSA is still the default audio transport mode when you fire Audacity up, but JACK is available as an option and works very well. It's still the most user-friendly audio editor you're likely to find with full support for a plethora of sound file formats that Ardour can't handle. And the interface is as easy to use as ever—anecdotal evidence comes from a non-geek friend of mine whom I was able to guide through creating a theatrical sound effect he needed (a ship falling off the edge of the world), from downloading Audacity for the first time to a finished and usable effect, in less than 45 minutes. That was a remote assist via instant messaging.

Ardour is also chugging along, now available for Linux and Mac OS X workstations. The interface has been somewhat refined since 2005, but should still look and feel very familiar to anyone who has ever used ProTools. The big feature upcoming in version 3.0 is MIDI editing, making a full-featured workstation out of Ardour rather than a specialized multitrack mixer and wave editor.

And when SpicyMcHaggis signed off on his Ardour review in 2005, his major concern was that Ardour's professional focus requires serious market share in order to make any sense. Well, I don't know how large the total addressable market is for this type of armor-clad audio tool, but the project is trumpeting 284 paying subscribers and a healthy amount of monthly donations. The cause is alive and well.

But I'm not here to fill volumes about Audacity and Ardour. Instead, today's focus is on MIDI sequencers and the toolkits that surround them. What can I say—I'm a one-man band with a keyboard and a MIDI cable, so every musical problem looks like a MIDI events roll to me.

Channel Ars Technica