|
|
![]() |
KeyboardMag.com >> This Month >> Linux: It's Not Just For Computer Geeks Anymore
Skip to [ Story Content and jump story attachments ]
Linux: It's Not Just For Computer Geeks AnymoreYou might think there’s no way a free operating system written by volunteers could compete when it comes to music production. But in the past couple of years, all the tools you need to make music have arrived on Linux. For years, Linux has enjoyed market leadership as a server operating system — Google’s servers run it, for starters — while struggling with the stigma that it isn’t polished enough for desktop use. Those days are over, and word is getting out. Linux is quickly becoming the OS you’d set up for your grandmother, with no fuss over activation, software updates, or viruses. Unlike any version of Windows or Mac OS, Linux is open-source. What does this mean to musicians? For starters, there are no company secrets to keep or non-disclosure agreements to sign, so software developers and users alike can get on the same page very quickly, speeding the flow of bug fixes and feature additions. Linux demands more nuts-and-bolts computer knowledge for pro audio than for web browsing, but if you’ve ever tried to troubleshoot a latency or driver issue on a store-bought laptop, you’re probably still listening. If you upgrade your hard drive, you won’t have to reactivate all your apps due to the hardware change, and when you discover a cool tool or workflow, you can share it with friends without them shelling out hundreds of dollars or resorting to piracy. With the exception of Linux versions that include commercial tech support, most everything in the Linux world is free for the asking, Many developers accept voluntary donations, which we encourage you to make. HOW IS IT DONE?Let’s look over the shoulder of Aaron Krister-Johnson, the keyboardist and choir director at Temple Sholom in Chicago. He also composes incidental music for local theater, and is half of the electronica duo Divide by Pi, Keyboard’s June ’04 unsigned artist of the month. The core of his home studio is a PC running Linux (see Figure 1). To obtain Linux, you download a particular distribution or “distro,” which is a particular version of Linux someone put together, for free or a donation. Some distros are available boxed at very low cost. Ubuntu (www.ubuntu.com) is popular for home-computer tasks, but Aaron uses Zenwalk (www.zenwalk.org). Software compiled for a particular distro will only run on that distro, so most come with several free applications that you can install along with the basic OS. We recommend Fedora (www.fedoraproject.org), because you can then install the Planet CCRMA package (ccrma.stanford.edu/planetccrma/software), which includes just about every Linux audio application in existence. Speaking of music applications, the most popular DAW for Linux is Ardour, and Aaron also uses JACK (see “You Don’t Know JACK?” below), a soft synth called ZynSubAddFx, and an arpeggiator he wrote called Pymidichaos. Some distros come with binaries — apps that have been compiled, i.e. converted from the programming language the developers used to the ones and zeroes computers understand at their innermost level. Three such distros are meant to provide install-and-go solutions for Linux-curious musicians: Studio to Go (www.ferventsoftware.com), Musix (www.musix.org.ar/en) and 64Studio (www.64studio.com). But sooner or later (most likely sooner), you’re going to have to take some groovy, free program you’ve downloaded and compile it yourself. This is where musicians used to commercial software might get scared off. Fear not, and remember that all the actual programming is already done. To compile a given program, you use a Linux command called “make,” and with a little practice, it becomes just one of those things you do when installing software. Though a complete how-to is beyond the scope of this article, there are many tutorials on the web, and Linux music software authors are usually happy to point beginners in the right direction by email. When was the last time you got support directly from your music software’s designers? The Linux philosophy of choice extends all the way to the desktop. Where Mac OS and Windows pre-determine this and give you a few cosmetic options, there are dozens of desktop environments that let you browse your hard drive, launch applications, etc., available for Linux. The two most popular ones are KDE and Gnome, which feature snazzy graphics and look and feel a lot like Windows XP. For music production, Aaron suggests a less flashy option that will leave more system resources free to crunch audio. He uses Xfce, which is the default desktop in the Zenwalk distro. Newer computers should be able to run the default Fedora desktop, called Gnome, just fine. So just how does Aaron go about laying down a tune? Here, we’ll follow the production of the track “On This Good Soil, Let Our Automatons Play in Peace,” which begins with a MIDI stream coming from the Pymidichaos arpeggiator, which Aaron wrote in his favorite programming language, Python. Don’t feel like writing a fancy arpeggiator yourself? No problem — you can download the Pymidichaos source code for free from Aaron’s web site at www.akjmusic.com. Let him know how you like it. As the name suggests, pymidichaos is no ordinary arpeggiator — it uses chaos math (think of fractals) to constantly vary the patterns it produces. It also has a GUI that lets you tweak this process in real time, which is just what Aaron did for this piece, essentially an improvisation performed on Pymidichaos and ZynAddSubFx. Zyn, as it’s friends call it, is a fantastic software synth. Aaron used very quick decays to create the percussion patches for the piece. A couple of Zyn’s built-in effects (tweaked as the piece was being generated) complete the sonic picture. Pymidichaos sends MIDI by saving data to a virtual MIDI port. Virtual MIDI ports come courtesy of something called snd-virmidi, which is part of ALSA, the audio framework that comes standard with the most recent versions of Linux (kernel versions 2.6 and up). This MIDI “port” is just like a file on Aaron’s hard drive that his Python script can save data to — no fancy MIDI API to deal with — and Zyn can read MIDI directly from it, in real time. Zyn has a built-in audio recorder, but in this case Aaron chose to send Zyn’s stereo outs to Ardour for recording. He used QjackCtl, which is just a graphical user interface for JACK (see “You Don’t Know JACK” below), to patch the audio across. Further effects could be applied in Ardour, of course. Finally the LAME mp3 converter was used to make an MP3 file for posting on the web. Want to hear it? It’s at www.akjmusic.com/works.html.
|
Keyboard Magazine is part of the Music Player Network.


