Linux And Music

Open Source Music Software & The AGNULA Project

Rosegarden is a sophisticated MIDI + Audio sequencer, which also incorporates a high-quality score editor.

The AGNULA project is creating what is possibly the first computer system tailored specifically for musicians  and it's all based around the Linux operating system.

Daniel James

If you use a computer at all in your recording setup, you'll know that the performance and stability of machines running general-purpose operating systems hasn't yet come close to that of dedicated studio hardware. That dedicated hardware might be like a computer inside, but it runs an 'embedded' operating system that is tailored for the purpose, with rock-solid reliability.

Most of the desktop computers in the world run a derivative of Windows 95 or the Mac's System 7, and it's a fact that the manufacturers of both know that their time is up. In the case of PC users, Microsoft would like to see their customers move to the NT-based Windows XP, while Apple has also abandoned its existing codebase with the launch of the UNIX-based OS X.

In the network era, computers that crash, lose data and work inconsistently are no longer acceptable. As more and more people have come to depend on computers for earning a living, a migration of some sort from the legacy operating systems becomes essential. Meanwhile, the computing power available to individuals continues to grow at rapid rate, meaning that off-the-shelf hardware can now process multiple tracks of digital audio in real time, something that not even the most well-equipped studio could do a generation ago.

If Linux Is So Good, How Come It's Free?

There are two traditions in software development: the work done in universities and by individual developers, often shared among research teams, and the proprietary code created by commercial entities which is usually a trade secret. Each tradition has its own ethos, and licenses the software it creates in very different ways.

The UNIX family, which includes Mac OS X and Linux, has long been the mainstay of university computer departments, but the original UNIX concept has fragmented into many incompatible proprietary versions. Because Linux belongs to everyone and no-one, it is now being invested in by many of the big UNIX companies, including IBM, Sun, SGI and HP. By contrast, Mac OS X belongs to Apple, so we are unlikely to see other companies contributing significantly to it.

It's a common misconception that Linux was created by a lone student in Finland. In fact Linus Torvalds still leads the project to this day, more than 10 years after he began it, but the operating system has been contributed to by thousands of people. It builds on the considerable work of developers who had dreamt for many years of making a free UNIX, many of whom worked on the GNU project.

The sense in which 'free' is used by the GNU project is not the same as in 'freeware': it refers to developer and user freedom rather than zero cost. Confusingly, Free Software can be sold, while software that can be downloaded at no cost often places restrictions on user freedom. But there are plenty of complete Linux systems that you can download for free, or buy on CD-ROMs for near the cost of production.

The familiar software licence that comes with a Windows or Mac application only allows you to use that software in specific ways, and non-compliance with the conditions of the licence can even lead to prosecution. Usually the software you get is a binary  an executable file made of ones and zeros that isn't human-readable. It's like a sealed black box, and if anything goes wrong or you don't like a certain feature, there's not much you can do about it except complain to the vendor. The vendor's response can only be that you should upgrade the binary, since the source code from which the program is made is a trade secret.

With 'open source' software, the source code of the program is made available for those who need it. This not only helps the software developers, who can fix problems directly, but also those users who can hire a developer to sort the program out. There are usually fewer restrictions on binaries too  for example, you can often install open source software on multiple machines without infringing the licence.

The next step in the process is what separates Mac OS X from Linux. OS X is based on a very liberally licensed codebase known as BSD, which allows developers who make fixes to keep the improvements to themselves  if they want to. This is one of the reasons why you can't just download OS X for free, even though it's based on freely available software.

The licence under which Linux and the majority of software for it is released is known as the GNU GPL, or General Public Licence. It insists that any improvements to GPL-licenced source code have to be made available under the same terms, and generally patches are sent back to the original developer. This continual feedback process has lead to the refinement of most of the software that runs the Internet  the Apache web server, for example  as well as Linux itself.

Of course, there is nothing to stop programs from the proprietary tradition being made available for Linux. As long as those programs don't make secret changes to Linux itself, then they are perfectly acceptable to most users and developers. The message that anyone porting their program to Linux will be forced to make it Free Software has been put about by the likes of Microsoft  but this is clearly not the case. As one spokesperson for the company put it, IBM has a lot of intellectual property and a lot of lawyers, and they aren't worried about the possibility.

At the pinnacle of creative power computing, Hollywood studios are squeezing every processor cycle out of the fastest hardware currently available to design and render ever-greater special effects scenes. If these computers are capable of creating the graphics used in The Two Towers, the second film in Lord Of The Rings trilogy for example, then they should have the power and stability to be able to handle any sound recording job we can throw at them. The suprise is that the film studios are not all using super-expensive hardware and esoteric operating systems to perform this mission-critical work. Increasingly, they are using off-the-shelf hardware that is not fundamentally different from today's desktop computers, and they are running the freely available Linux operating system.

One obvious advantage of Linux is lower acquisition cost, and while this is definitely a factor for sites with large numbers of computers and limited budgets (for example schools), it's not actually the major reason for most migrations. In the case of a multi-million dollar movie studio, it's unlikely to be the price of Linux alone that makes it attractive. These studios can afford to buy any system they want, so why are they choosing Linux? The answer is in part the lower cost of Intel processor hardware compared to the traditional SGI UNIX platform, and the fact that it's much easier to move programs from SGI to Linux than from SGI to Windows.

But a far more compelling reason for the migration is the quality and flexibility of Linux. Machines powered by Linux have been known to run for months or even years without needing a reboot, let alone crashing. In the UNIX world that's not unusual, but that kind of reliability hasn't been seen on desktop computers before. And the open source development model means that users can get the software they want, rather than just choose from what's on offer.

Another factor often cited by people who have migrated to Linux is the supportive and knowledgeable user community. If you have a problem with your Linux machine, there are lots of places to ask for help  both with local user groups and on the Internet. Linux users tend to be self-documenting: when they find the solution to a problem, they will often create a web page describing the fix to share their knowledge.

Ardour is a multitrack hard disk recorder which offers an interface modelled on hardware units such as the Tascam MX2424, and also boasts DAW-style on-screen editing

People who choose Linux also appreciate the benefit of open standards. This makes vendor lock-in  the phenomenon where customers of a particular computer company are prevented from having a free choice  much more difficult. Many Apple and Microsoft users across the creative industries know exactly how this feels, when they find their projects can't easily be moved to a different platform. Open standards are particularly useful to the creators of embedded systems, as they mean manufacturers don't have to start from scratch every time they invent a new digital device. Linux can be customised for embedded systems, which often provide a highly resource-constrained environment, to the extent that Linux has already been successfully installed by IBM Research on a prototype digital watch.

Could the recording industry be the next creative sector to adopt Linux? Mac hardware is firmly entrenched in professional studios for the time being, but due to the open source nature of Linux, the free OS is available for many different processors, including the PowerPC architecture of the G3 and G4 chips. While most Linux users have Intel Pentium or AMD Athlon-based computers, several companies already make packaged versions of Linux for PowerPC machines, including Mandrake, SuSE and Yellow Dog. This makes the PC/Mac debate somewhat irrelevant in the Linux world. Because it's part of the UNIX family, Linux could be the closest thing to Mac OS X that someone who currently has a Windows machine could get.

The Stanford University Centre for Computer Research in Music and Acoustics (CCRMA) already produces pre-packaged audio applications and system components for Linux, as part of its Planet CCRMA project. However, this isn't much help to people working in the sound industry with little or no UNIX experience. Although both Linux and Mac OS X hide UNIX quite well under some very elegant graphical interfaces, there is no doubt that UNIX can be confusing to someone from a Windows or traditional Mac background. It's probably no more difficult than moving from Mac to Windows or vice versa, but nevertheless an element of retraining will be required when migrating to any UNIX-based operating system. With a different version of Windows or Mac OS coming out every couple of years, though, people will have to retrain anyway. And the Linux desktop can be themed to resemble Windows or Mac OS for a smoother transition.

AGNULA

The AGNULA project, the name of which is an acronym for A GNU/Linux Audio Distribution, has been created to design and build aversion of Linux specifically for professional musicians and recording engineers. AGNULA is a consortium of several European universities, the Red Hat Linux company and the Free Software Foundation. The idea is that all the software needed for professional audio use will be on one set of CD-ROMs, which will include a tuned Linux operating system. This doesn't mean that it just comes with an extra driver or two and a few tweaked settings here and there. While Windows and Mac OS will always remain general-purpose systems, the open source philosophy means that Linux can be customised for individual requirements at the most fundamental level.

As far as the musician and pro audio user is concerned, there are four key components of a Linux system. The kernel  the actual Linux core  can be customised for very low latency, which is essential for any kind of multitracking or synchronisation. The Advanced Linux Sound Architecture or ALSA provides drivers for pro and consumer soundcards (see table on the last page of this article). JACK is the internal audio system which connects between applications at a low level, while LADSPA stands for the Linux Audio Developers Simple Plug-in API. LADSPA is a bit like Steinberg's VST plug-in system, but in an open source style  the many VST plug-ins available to download from the Internet at no cost don't generally include source code.

The individual components of AGNULA are already available, but the project is creating two integrated packages based on either the Red Hat Linux or Debian distributions. Each distribution (or version) of Linux has its followers: the Red Hat company is more business-orientated, but Debian is built by volunteers and has a reputation for very high quality. While each distribution has a slightly different way of doing things, they remain broadly compatible. Published standards and source code availability mean that a program created on one distribution is usually available to all the others.

Beta versions of the two AGNULA distributions are due shortly, with stable releases expected in 2003. In the Linux community, the widest possible testing of beta versions is encouraged to enable high standards of quality control. With modern hard disks being so large, there is usually plenty of room to install Linux in its own partition, and keep the existing operating system intact. Disk partitioning is well worth doing for Windows machines anyway, since it keeps your sound data well away from the operating system, and therefore safe if you ever have to reformat your C drive. Most current Linux distributions feature a wizard to help you set up partitions and dual-booting, so it's likely that AGNULA will too.

Since AGNULA will cost very little to try out, except perhaps in the time taken to learn about the software, there's not much to lose. Both AGNULA distributions will be free for download, intially built for the Intel x86 architecture (Pentium and Athlon), and will be probably be available on CD-ROM too. The project also plans to make the distributions available for PowerPC chips and the new generation of 64-bit processor systems later next year.

Audacity is another Linux-based audio recording and editing package.

Applications

The drawback to any new desktop operating system is usually a lack of applications. Fortunately, although Linux is relatively new to the sound industry, it has already been under development for a decade. While Windows and Mac applications can run under Linux on the relevant processor using various kinds of emulator and virtual machine, lots of native Linux audio software is already available. The full range of programs available on other platforms is covered, from notation editors to DJ software. Many excellent free music applications for Linux are stable or close to stable release, and will be included with AGNULA. Here are just a few of them: Rosegarden is a MIDI + Audio sequencer which includes notation and audio editing. Version 4 is probably the closest native equivalent to Cubase for Linux, and has recently been released as a beta after two years of active development. Unlike Windows and Mac OS where there is only one kind of desktop for each system, Linux developers have a wide choice of graphical toolkits to build applications from. Rosegarden is designed with the KDE interface, but it will run on any Linux machine with the right libraries installed. Rosegarden features include MIDI and audio playback and recording using ALSA and JACK, real-time audio plug-in effects via LADSPA, score, piano-roll and track overview editors, high-quality score printing and MIDI file input/output.

Software engineer and musician Richard Bown comes from London, and is one of the lead developers on the Rosegarden project. He's been working on Rosegarden over the last seven years, but until recently he still needed to use Windows or a Mac to record and produce his music. While making his last album, Richard wondered if Rosegarden would one day allow him to do the same on Linux, and now believes it can.

When Rosegarden was originally written for UNIX machines about 10 years ago, Linux was just beginning to emerge, and it seemed a natural fit. Since there were already plenty of good sequencers and notation editors available for the Mac and Windows, the Rosegarden team concentrated on making something new. "We're now establishing Rosegarden as a product in its own right and hope to make it something that will make music people start to think about Linux more seriously," comments Richard. "If studios or individuals want a boxed solution they can approach us and we can put it together for them, but it's true that anyone can package and distribute our software. AGNULA doesn't need our permission and we don't get any explicit kickback apart from a little publicity. As a small company we couldn't afford to develop, market and distribute a closed-source solution. As an open-source project we do sign away our rights to saying what people do with the source code but we do gain testers, developers, marketers, friends and a warm feeling along the way."

Sweep is a multitrack audio editor with a difference: it can also be used for virtual scratching.

Richard adds "The warm glow bit is important to me. While I'd like to be paid to write this code, I'm also proud to be a part of it for what it is. The fact that Rosegarden is now becoming a quality solution to rival those on other platforms is a great bonus."Ardour is a multi-channel hard disk recorder and digital audio workstation, capable of the simultaneous recording of 24 or more channels of 32-bit audio at the 48kHz sample rate. Currently in heavy development, Ardour visually resembles the UNIX software available on platforms such as SGI. Linux machines running Ardour are intended to replace dedicated studio hardware such as the Mackie HDR, the Tascam 2424 and ADAT systems. Ardour is also intended to rival proprietary software applications such as Pro Tools, Samplitude, Logic Audio, Nuendo and Cubase VST. It supports MIDI Machine Control, and can therefore be used with any MMC-compliant digital mixer. Audacity is a deceptively simple audio editor and multitrack hard disk recorder. It has a clean interface with large buttons in the style of a tape machine, but very precise edits are possible by drawing envelopes directly on the waveform using the mouse. Audacity breaks large audio files into small chunks for its native file format, which makes multitrack recording and editing quite feasible on modest hardware.

Many Free Software effects plug-ins are available under the LADSPA standard.

An added bonus with Audacity is that the program is available not just for Linux, but for Mac and Windows too. This means that mixed-computer environments can have a standard free format for multitrack recordings. Version 1.0.0 is the current stable release, while the development version 1.1.0 contains many new features, including support for 24-bit and 32-bit samples with automatic real-time resampling. The new version also includes LADSPA plug-in capability, an XML-based project format and full Ogg Vorbis (a licence-free alternative to MP3) import/export.Sweep, at first glance, is a conventional multi-channel audio file editor. However, a virtual stylus instead of the normal cursor makes the program quite unique, on Linux at least. The idea is that you can scrub through a file to hear the exact place where you want to make an edit  but the virtual stylus, known as Scrubby, has been programmed with the physics of a real turntable. Throwing the mouse to the left results in a spin-back effect, decelerating Scrubby to a full stop.

This makes Sweep possibly the first audio program that could be used both in a serious production environment and as a performance tool for fully digital DJs. It was developed with the support of animation studio Pixar, who presumably needed a high-quality audio editor which could be used on Linux and Sun UNIX workstations (Sweep is available freely for both). This application might be the first benefit to trickle down from the big movie studios to the Linux audio community, but it almost certainly won't be the last.

Plug-ins Under Linux

Steve Harris wrote many of the LADSPA effects plug-ins. He works at Southampton University and started writing experimental electronic music about 10 years ago. Steve takes up the story: "In order to expand the palette of sounds available to me I started writing simple music programs, but the computers I had then weren't fast enough to work in real time. I only learnt real signal processing skills a few years ago, when Linux started to become a useful audio system and I noticed the lack of plug-ins. I chose LADSPA mostly because I liked the design, and there are some licensing issues which make writing Free Software VST plug-ins difficult."

Will My Soundcard Work With Linux?

This is just a small selection of soundcards and other hardware supported by ALSA. Some drivers have been available in stable versions for a long time, while others are still in development.

Most USB devices are supported, as long as they are standards-compliant. For a full list, see www.alsa-project.org.

Steve gives his plug-ins away for free, including the source code  and he isn't worried about being ripped off. "I encourage people to reuse my work. Many of the core routines used in DSP programming are difficult to get right and very tedious to write, so it makes sense that they should only have to be written once. I write audio software so that people will have access to high-quality, free (in both senses of the word) audio tools. It doesn't make sense to go out of my way to deliberately hinder music software development by hiding the source code."

Where's The Catch?

So is there any reason why we shouldn't all migrate to AGNULA and Linux tomorrow? Well, if a studio has a large capital investment in proprietary systems, some of this won't be able to be carried over to a Linux platform. An example would be a large collection of plug-ins, or application software that won't run adequately in a virtual machine or emulator. However, this is often outweighed by the cost of continual upgrades of the existing system  and upgrades will almost certainly be forced on both Windows and Mac users eventually.

A greater problem could be back-catalogue work stored in proprietary formats. Most of the audio formats from Windows, Mac and UNIX are supported by the equivalent Linux programs, but complex projects combining multitrack audio and MIDI could be a problem. If the original software vendor supported open standards, it wouldn't be difficult to create a tool to transfer the project from one platform to another. Where that file format is binary and a trade secret, however, the user may have no choice but to fall back to standard file types for exporting projects, and some of the information might be lost.

This is also a problem when moving complex projects between proprietary programs on the same platform, of course. It could be argued that since binary and secret formats keep the user hostage to their creator, they are best left behind anyway. What if you need to get that project out of the archive for a remix in 20 years' time, and the company who made the software no longer exists? Unfortunately, this is not a hypothetical situation for many institutions who have data going back to the 1970s on unreadable open-reel tapes.

It may be early days for Linux desktop audio applications, and both proprietary embedded hardware and software based on trade secrets aren't going to disappear from studios overnight. A more likely scenario is that Linux machines will be introduced to perform specific tasks, and gradually increase their profile in the world of sound. Companies in the industry are almost certainly using Linux, perhaps without realising, in their computer networks already  a record label with a busy web site, for example, or a studio saving its work on an embedded file storage appliance that doesn't even look like a computer. Even if you've got no time to try it out at the moment, Linux is well worth keeping an eye on.