Inside a Luxury Synth: Creating the Linux-Powered Korg OASYS
Pages: 1, 2, 3

Korg Does Linux

The OASYS doesn't just have standard PC circuits; it runs on top of PC software. It's the first big-name music product to run Linux. (Muse Research and Manifold Labs offer Linux-powered, rackmount plug-in players.)

Getting an operating system working on a musical instrument is a little different than installing it on your PC, though. "We are using a real-time extension to the kernel," says Phillips. "Through the real-time extension, OASYS doles out CPU cycles to other processes. With a real-time system, it's something that actually owns the hardware, and the operating system kind of runs on top of that."

Under the hood, the OASYS is running genuine Linux as its OS, and Phillips says the GPL—the General Public License, the legal license that governs open source software and keeps it free—still covers the Linux kernel and some GNU utilities. (Naturally, the GPL doesn't cover Korg's proprietary OASYS software, but you will find applicable source code and licenses on the bundled CD-ROMs for the open-source Linux components.)

Touchscreen DisplayThe touchscreen display gives easy access to the innards of the OASYS, complementing the physical control surface to its left. (Click to enlarge.)

So you boot up your OASYS and see a Linux log-in screen, right? No way. Linux is entirely behind the scenes. "Basically, [the operating system] doesn't include anything that we consider to be the heart of the system—the synthesis, the UI [user interface] are all proprietary," says Phillips.

"You have three choices when you build hardware like this," he continues: "Not use an OS at all; create your own OS, as Korg has done with other devices; or get an OS from someone else." Using an existing OS is fairly new in the world of musical instruments, but it's an enormous time-saver. "Most of the work is already done," Phillips explains. "It was really good to have a relatively off-the-shelf operating system, because of the complexity involved in building the other elements of the OASYS."

The decision to go with Linux over Windows or another OS was straightforward. The OASYS PCI ran on Windows systems, but licensing embedded versions of Windows to run on keyboards is prohibitively expensive. Windows also does lots of things you don't need a musical instrument to do. "The clearest path was towards something we could customize for ourselves, that would be really reliable and would allow real-time performance, says Phillips. "Linux seemed to be the best choice, in combination with real-time extensions."

In fact, Linux's greatest success on the OASYS project may be that it's almost entirely invisible, letting Korg's designers focus on their proprietary sound engine. That was a big part of the appeal to Korg. "You can change things easily in Linux," says Phillips. "There's more granularity when you compile the kernel."

Developing the OASYS Engine

Jerry Kovarsky Korg USA Keyboard and Recording Products Manager Jerry Kovarsky (photo: Dan Phillips).

When players say the OASYS—or any other synth, for that matter—"sounds good," what's the reason? Aside from raw digital-audio resolution, there are a number of factors at play.

One major accomplishment of the OASYS is a bit hard for synth newcomers to appreciate, though digital synth geeks get it immediately. It's called dynamic voice allocation, and it's what separates the OASYS from other hardware and software, computer-based synths included.

Voice allocation is what allows a synth to play multiple notes (which in turn often include multiple, layered sounds) at the same time. Adding multiple synthesis engines, as the OASYS does, complicates matters. Most digital synths can't allocate notes between different synthesis engines; even the OASYS PCI lacked this capability. Your computer can dynamically share resources among multiple effects and synths, but the process is often inefficient.

"The big issue comes when the resources aren't sufficient to carry out the tasks the user is requesting—for instance, playing more voices than the CPU can handle when using multiple synth plug-ins," says Phillips. "In this case, with CPU systems, there is generally no overall management; an individual plug-in will most likely allow the user to set a max number of voices, or perhaps a max CPU percentage, and then steal its own voices to keep within those boundaries, but one synth can't steal voices from another synth. Instead, when you ask too much of the system, you get dropouts, stuttering, and other symptoms of CPU overs."

Your CPU is also busy drawing the GUI, handling audio playback, and doing other chores. Many software synths make compromises to go easy on your CPU, like limiting sound quality or setting arbitrary limits on polyphony. Beyond that, you wind up doing the allocation of resources yourself, manually: You watch your CPU meter and make adjustments to keep it from overloading.

"What we've done in OASYS is rather different," says Phillips. "We have a manager for all the voices in the system, a voice allocator." That makes a big difference in the richness of the sounds the OASYS is capable of producing. "The more voices you have, and the more channels that you have, the more complexity in a voice itself," Phillips notes. Kovarsky's forearm-mashing demo bears that out: The OASYS is filled with stunning, rich patches that layer complex, high-quality audio.

OASYS players don't have to worry much about what's going on under the hood, but with multiple synthesis engines it gets pretty complex. "The AL-1 virtual analog, the CX-3 organ, and the HD-1 PCM synth all require a different amount of computational power per voice," says Phillips. The CX-3 organ has both static and dynamic components to manage. With all of this allocation complexity, using a single, very powerful CPU instead of a set of specialized DSP chips can be advantageous, says Phillips.

Dynamic voice allocation is just one aspect of what makes the OASYS sound the way it does. "Many, many man-years" at Korg went into voicing, the painstaking process of tweaking preset sound data to make it sound just so, says Phillips. In the same way that craftspeople voicing a Bösendorfer or Steinway piano make the sound of those instruments unique, the human touch on any instrument is invaluable.

OASYS controllersThe controller section is carefully mapped to each sound, simulating drawbars on Hammond organ sounds or volume faders in mixdown mode, for example. Also note the vector joystick, used for blending four sounds.

Going beyond the presets is important, too. A major design goal of the OASYS was customizability. Korg wanted audio and modulation routing to be extremely flexible, and it has made extensive use of the hardware control surface, so that knobs and faders function consistently across instruments and always are capable of doing something to the sound. While much of the focus is on the OASYS as a synth, it's also capable of live sampling, beat detection, and slicing. Combined with audio recording and arrangement capabilities, this is really a full-featured workstation keyboard capable of many tasks without a computer.

Pages: 1, 2, 3

Next Pagearrow