Tom's Definitive Linux Software Roundup: Audio Production

You Don't Know JACK

JACK stands for JACK Audio Connection Kit--yes, another Linux app utilizing the always-irritating recursive acronym.

JACK is a sound server API, which resides between the system hardware audio driver and running applications. It can be used to route audio streams from one application to another, allowing multiple applications to be chained together. JACK acts like software cabling, for lack of a better description. Connecting real instruments into hardware synths, EQs, and effects pedals is accomplished by plugging cables from one to another before the amp. JACK creates connections between software applications before playback through PC speakers.

JACK offers complete command line functionality. However, most people use the QjackCtl GUI interface. The GUI helps to visualize how your apps are linked to each other. The Applications menu entry for QjackCtl is simply JACK Control, and we will be referring to JACK, JACK Control, and QjackCtl interchangeably in the application roundup.

JACK Control must be started before any other application that accesses sound, or you will most likely be greeted with an error window. This means you need to fire it up before a browser, audio player, or chat client. Those other apps can be started after JACK with no detrimental effect most of the time. But before starting any piece of software you would like to connect using JACK, you must first start JACK.

Connections are made in the connection window. Just click one entry in the output pane and another in the input pane, then select Connect. New entries appear when JACK-compatible applications are opened, and some apps automatically create their own connections.

Without JACK, an open standard API, connecting these different applications to each other would not be possible in many cases. Recording could be achieved one step at a time via import/export to the various apps. But that would add substantial time to even amateur projects, and forget about doing anything live. Another option would be to rely on plug-ins, but they would have to be specially made from one app to another, which is certain to limit your options. Comprehensive DAWs could handle many of these duties, but they lock users into a single app, along with any of its shortcomings.

JACK enables a lot of functionality that wouldn't be possible otherwise in the world of Linux audio production. But all is not rosy. JACK is complicated. Many JACK-compliant applications have preferences tabs filled with options. JACK has its own options menu as well. With all of those settings, getting JACK to work with apps and apps to work with each other isn't always easy. Troubleshooting an issue with one app often leads to more issues with other apps in the chain. The more apps in the chain, the more complicated troubleshooting becomes. Throw in MIDI apps and issues with hardware drivers, such as ALSA (or PulseAudio, yikes), and you have a mess on your hands.

Be prepared to spend some time on the forums getting a custom chain of applications working properly. Be patient, and be willing to redo the whole OS if things go south. It's also not a bad idea to establish at least a beginner's familiarity with the Linux command line. Many of the most knowledgeable users in online forums will give you code instead of a GUI walkthrough as possible solutions to your problem. You may also be asked to run some of your applications from the terminal instead of the Applications menu in order to copy and paste errors or other CLI output. This output is essential for generating feedback tailored specifically to your issue. Most GNOME distributions list the command line as Terminal, and can be accessed via the Applications/Accessories menu. KDE distros typically list it in the Applications/Utilities menu as Konsole.

  • nekromobo
    Now I remember why I read tom's.

    A great article!
  • akorzan
    I found using WINE with, don't laugh, FL Studio works great. Latencies are on par with Windows. Only problem is some VST plugins have mouse problems... I.E: double-clicking has to be absurdly fast. Another trivial problem is that battery life in laptops is nonexistent with WINE and FL Studio.
  • longshotthe1st
    Why would anyone even bother? Time is money, I'm going to just stick with what works.
  • damiensturdy
    Great read. FLStudio is one of only two pieces of software that keeps me tied to Windows. Sure, it runs under Wine, but getting it working is a pain, and you're lucky to get 100% of the functionality. As an advanced user of FLStudio, I use almost everything the app provides, and I need it as low latency as possible. 20ms is too much- 10ms is better. In general I've never achieved
  • damiensturdy
    Damn, it cut my post off. No way to edit that? ah well. I was basically saying that this article has helped me decide what software to use when I build my synthesizer this year.
  • g00ey
    Has anyone tried running software such as FL Studio in Linux using a virtualization software such as VirtuaBox? VirtualBox can even run in seamless mode which allows you to have Windows windows next to Gnome/KDE windows in the same screen.
  • Very nice article you could also have covered comercial productos on Linux like:

    Harrison Mixbus; Renoise; EnergyXT; WusikStation; PianoTec...

    BTW there is big updates soon for Ardour (3.0), MuSe (2.0) and Rosegarden (?).
  • damiensturdy
    @g00ey, yes. Latency and audio are weak through a VM, and the audio still has to travel through whichever audio library the Linux distro is using, it's a no go.
  • caeden
    g00ey, as a general rule of thumb you don't want to virturalize your workstations whether they be for audio or video editing. In part due to stability, and in part due to speed/latency.
    I was surprised at the scoring software. Looks about as good as my wife's version of Sibelius, with the exception that she had to pay for hers.
    Personally I just do editing and cleanup, and while it looks like it is much improved on Linux from what it use to be, it has improved more on the windows side. But nice to know that there are options available if I were to ever cross over.
  • I'm really looking forward to the Video apps review since that is my main sphere of interest.
    But it really sounds like it is time to get the 'ole midi keyboard out of the closet and try some of those synth apps!