You are here

Sound Synthesis On A Computer, Part 1

Exploration
Published April 1997

Designing sounds on a computer can give you virtually all the knobs and sliders you'd want, but there's the potential to go far beyond hardware synthesis too. Dennis Miller begins a two‑part tour of what's available. This is the first article in a two‑part series.

As every electronic musician knows, there are an awful lot of computing resources residing in the synths and samplers we all use. But what if you could harness much of that power and design original sounds on your computer with the ease of using a patch editor? With the CPUs of modern personal computers rapidly increasing in power, and new programs appearing to direct that power towards creating music, sound synthesis on the desktop is becoming more practical than ever.

This two‑part article will cover many of the methods available for creating sound directly on a PC. I'll start with some simple programs that provide a software‑only sound engine for playing MIDI files, then discuss programs that simulate vintage analogue hardware. Next we'll move to graphic sound‑design software, which offers vast potential for synthesis, and finally some high‑end technologies which require additional hardware to supplement your computer's own resources. Many of these programs are in beta or have just been released, so keep your eyes on the web sites for updates and enhancements. And bear in mind that although I'll focus on Windows applications, several of the programs are available for the Mac as well.

Types

Sound synthesis software comes in several flavours. First are the programs that use a text‑based interface, requiring the user to actually write 'code' that describes the sound; this code is compiled into soundfiles which are stored on your hard drive and played back at will. Because there are hundreds of sound modules in the current versions of such programs, they are very powerful tools for working with sound. There are other non‑real‑time programs that use a more graphic interface, where sound‑producing or sound‑processing modules are 'wired' or patched together on the screen. Depending upon the types of functions that the program makes available, this approach can be very powerful as well.

Software synthesis has the distinct advantage of being extremely flexible and open‑ended.

Look around the Internet and you'll also find many new programs that actually turn your computer into a virtual synthesizer. Though there are several variations on this theme, the basic idea is that as you turn the knobs or move the sliders provided in the program, sound is created instantly. Another approach uses stored wavetables to play sound on demand; in effect, you use these programs' 'presets' to play the MIDI data you wish to hear. In the final category are hybrid systems that combine additional hardware with sound‑design software. This category appears to be growing quickly, though one system stands out as the clear leader.

Goals

Why bother to program sounds on a computer when you can flip a switch on your synth and have access to hundreds of sounds? Because software synthesis has the distinct advantage of being extremely flexible and open‑ended. While today's synthesizers and samplers are certainly extremely powerful, there are still limits to the type and manner of sound production that you can employ using such devices — in essence, you can't use synthesis method x if the manufacturer doesn't want you to! With the more sophisticated software synthesis programs, such as Virtual Waves, Csound and the Kyma System, you can create an unlimited variety of sounds using every major synthesis technique available today.

Another advantage of software synthesis is upgradeability. Though several newer synths offer Flash ROM upgrades (upgrades on a disk), new sound‑producing modules and other updates can easily be downloaded and installed in software‑based programs. Then there's sound quality. With the proper hardware, the sound created by any of these programs can travel directly to a DAT recorder, a sampler, or a CD recorder without ever going through an analogue stage. Very few external sound modules offer that option today. And of course anyone who's ever used a patch editor or librarian will know that working at the computer beats staring into a 2‑inch LED screen, especially when you're configuring dozens of parameters.

When all's said and done, everyone should be able to find something of interest and begin to experiment with this whole new way of creating sound. As you'll see, the possibilities are endless.

Virtual Sound Engines

In our first group of synthesis programs, two of the three applications operate by hiding in the background and producing sound when you send them MIDI files or note data from an external controller. Yamaha's S‑YG20 Soft Synthesizer and Roland's VSC550W Virtual Sound Canvas offer little or no patch‑editing capabilities, but instead provide numerous preset sounds for use in your scores.

  • YAMAHA S‑YG20

The S‑YG20's sound engine offers up to 32 voices of polyphony at a maximum 22kHz sampling rate. All audio is 16‑bit, and there are over 300 XG‑compatible presets plus a number of drum kits to work with.

Effects are limited, and the MIDI file player that's included is very basic. And though it can generate sound under the control of your existing MIDI applications, you can't use a digital audio sequencer such as Cakewalk Pro Audio without disabling that program's audio playback. That's because only one application can have control of your soundcard at any given moment. The current downloadable version is also labelled a 'trial version', so there's no support available — don't expect too much from this program until it becomes a fully released product.

www.yamaha.co.uk/html/midplug/m_...

  • ROLAND VIRTUAL SOUND CANVAS
    Roland have been interested in putting sound‑producing capabilities on your desktop for some time, and their Virtual Sound Canvas (VSC) should appeal to many novice musicians. Like the S‑YG20, the VSC creates multi‑channel sound data on the fly, so you'll need a minimum setup of 8Mb of RAM running on a Pentium 60; even more effective would be a Pentium 100 or better with 16Mb of RAM. The VSC creates 16‑bit stereo audio using up to 128‑voice polyphony at either 11 or 22kHz sampling rate, and allows you to choose how much of your computer's horse‑power you wish to dedicate to the task. To use the Sound Canvas, simply install the program, then select the VSC driver as the output for any MIDI program you have on your system that doesn't incorporate digital audio.
As I sat for hours, listening to the synth's output through my studio monitors, I dreamed of glorious days gone by...

Included with the VSC are several basic applications, such as the DoReMix2 Musical Pattern Software. This program offers a 7‑track sequencer‑style track sheet for creating phrase‑based compositions (Figure 1). There are dozens of pre‑existing phrases (actually just short Standard MIDI Files) that you can pick from among the various musical styles shown in the Phrase Directory, but no direct editing of the note data is allowed. In the Mixer window, you can assign volume and pan settings for each track, and specify Reverb and Chorus amounts on a track‑by‑track basis. The program uses what it calls 'frames' as its time base — there are no measures per se — and you can specify different settings for each frame of your composition.

Overall, the VSC package is very user‑friendly and can fill in when you need some quick and dirty background music. I especially like building a tune by dragging the phrase icons onto the workspace, and the sound quality is certainly as good as on many Windows soundcards. But the system is clearly aimed at beginners, and pro users won't find much of interest. This is due above all to the time‑lag that the VSC and most other real‑time programs impose when generating a sound. If you play in from an external controller, for example, you'll detect a clear gap between hitting the key and hearing a sound. Even using a sequencer with a screen that scrolls during playback can affect the VSC's ability to keep accurate timing, so don't plan on doing any tight cueing with your video deck. As the VSC manual says, "For high‑quality, stable (sic) playback, we recommend that you use an external GS sound module." Not quite a strong vote of confidence.

www.roland.co.uk/intl.htm

  • REALITY
    Seer Systems, headed by longtime MIDI luminaries Stanley Jungleib and Dave Smith, developed the first commercial software synthesizer in 1992, and have recently shown a new program that should appeal to professionals and amateurs alike. Reality is a software synthesizer that allows you to build sounds using numerous modern synthesis methods simultaneously, and play them back with an external controller or any MIDI program on your PC. The company has done extensive work to lower the latency (time‑lag) of the sound engine: according to their claims, the response time is as good or better than most professional synths.

Reality will offer capabilities that go far beyond what you'd find on an outboard synth. For example, you can assign up to six patches to a zone, and up to 128 zones to a key map, which the company calls a PatchWork. Each patch can have four oscillators, four filters, and four LFOs. You can load and process wave files off your disk up to a full gigabyte in size for a true disk‑based sampler, and of course there's extensive mapping of controller data, regardless of the source, for various patch parameters. As in any real‑time application, the total polyphony you'll get depends on the complexity of the sound you're producing and the speed of your computer.

Reality's Capture mode will allow you to record the program's output directly to your hard drive, and numerous physical models, including guitars, flutes, bells, and various keyboards, will be included when the program ships this spring. The initial release will only support 16‑bit soundcards from Creative Labs, including the new digitally‑equipped AWE 64 Gold, but future versions will be available for other Windows audio hardware.

www.seersystems.com/pages/profpr...

Analogue Emulation Software

Next we'll look at a group of synthesis programs that turn your computer into a real‑time analogue synth complete with buttons and sliders. These programs, which are mostly shareware, draw heavily on your computer's CPU for their power and will vary in their performance according to the computing resources you have available. On my P133 with 24Mb RAM, they all work perfectly well outputting mono audio at 16‑bit, 44.1kHz when receiving their note data from internal sources. But in several cases, sending data from my MIDI keyboard resulted in a half‑second delay. This improved somewhat when I lowered the output sampling rate.

  • VAZ
    VAZ, or Virtual Analog Synthesizer, provides a screen full of sliders that can be used to control the oscillators, filters, variable waveform LFOs, envelopes, and modulation routings offered by the program (Figure 2). You can tune the base pitch of the two oscillators using 2‑foot to 32‑foot pipe length increments (!), design 4‑stage envelopes for controlling various synth parameters, or apply FM to either oscillator. Using any of the numerous modulation sources to sweep the filter's cutoff frequency produces a sound known and loved by many of our generation, while classic ring modulation is easily applied by selecting it in the Mixer Control Source window.

A second screen is used to build note patterns containing up to 16 steps. Each step has its own portamento and accent setting, and you can move easily around up to eight patterns at once. Functions for randomising the note sequence in individual patterns are provided, and you can also randomise the order in which the patterns play back. The program includes several basic tutorials to get you started and numerous example files on disk. The free shareware version has somewhat limited capabilities, such as disabled patch saving, but the inexpensive registration fee is well worth paying — all in all, a nicely done program!

www.cp.umist.ac.uk/users/martin/...

  • RUBBER DUCKIE
    Rubber Duckie
    , an analogue emulator from DeLusion, has some special tricks, which include playing back a wave file from disk while its synth section is running. You can change the volume of the wave file in real time, or adjust its speed as it plays back. The speed adjustment produces very clean results without the artifacts normally associated with this type of processing, and the slider you use to make the changes responds remarkably well. There's also a Sync option which restarts the wave file every time your note pattern cycles.

Like the other synth programs, Rubber Duckie is loosely modelled after the TB303 and offers a single oscillator with a sweepable resonant filter, plus a sequencer section for triggering notes. There are six sliders to control various parameters of the filter, such as cutoff frequency, attack, decay, and resonance, plus a delay module that's adjustable from 1 to 1000ms. Patterns can be copied and pasted among the 14 available pattern slots, and various note parameters can be randomised independently. The full registered version adds the ability to capture the program's output to disk.

www.waste.uni‑essen.de/d‑lusion/

  • REBIRTH
    The real king of analogue emulators is ReBirth RB338, a commercial program from Propellerhead Software. This software uses a graphic interface that resembles two TB303s and a TR808 drum machine on a single screen, and comes complete with all the buttons, switches and knobs of the originals (Figure 3). ReBirth produces a sound that is remarkably similar to that of its analogue ancestors, and as I sat for hours, listening to the synth's output through my studio monitors, I dreamed of glorious days gone by...

ReBirth works with a standard Windows soundcard (which is how I tested it) but should run even more smoothly if you have Microsoft's new DirectX extensions installed. You can load multiple instances of the program simultaneously, though only one can be active, and I experienced no glitches or hiccoughs using my mouse to switch among five modules. The controls on the screen are a bit small and can't be adjusted in the demo version (an early, pre‑beta release), but, in general, it's very easy to create patterns and adjust the various settings offered by the program. The interface should be more configurable when the final release ships, and you'll also be able to save the program's output on disk as a WAV or AIFF file in the shipping version.

www.propellerheads.se

Sound Design Software

The next group of options includes two simple programs that offer only basic synthesis capabilities, plus four applications that allow you to build sounds using multiple synthesis methods. Don't expect real‑time playback here, however. Instead you'll be creating wavefiles that you can download into your sampler or the sample memory of your soundcard, or simply use alongside MIDI in an integrated MIDI and digital audio sequencer.

  • SUBSYNTH

As its name implies, SubSynth uses subtractive synthesis to create sounds according to your specifications. The program employs a very simple model that includes two oscillators fed by a pair of LFOs, a mixer, time‑varying filters, and an output. The pulse width of the oscillators is continuously variable from 100%, which would produce a square wave, to 1%, which is a simple impulse train, and the waveform can change over time if you use the LFO to modulate it. Pitch selection is via MIDI note values, with an additional fine‑pitch setting available for Oscillator 1 and an octave‑shift setting for Oscillator 2.

The filter section offers frequency (adjustable in 1/3‑octave steps), resonance, and modulation depth controls, as well as a choice between second‑ and fourth‑order harmonics (for altering the amount of high‑frequency attenuation). Though not the most sophisticated program of its type, SubSynth does a good job of creating simple, analogue‑type sounds.

www.users.dircon.co.uk/~martin‑s/

  • STOMPER

Stomper, by ZAP, is intended to produce analogue drum sounds, and it provides just the right tools to get that job done. But there's more flexibility here than you might imagine: sounds can be of any length and can have very complex, time‑varying qualities, for example. I moved beyond drum simulations very quickly and designed some long, evolving analogue sounds that I intend to transfer directly to my Kurzweil K2000.

Stomper provides 32 oscillators for building your sample files, and by copying and pasting waveform parameters, you can quickly build fairly massive textures. Each oscillator has independent start and end times, in addition to frequency and amplitude envelopes, and as you create multi‑layered sounds, you can solo each waveform to hear it out of context. The program's graphic interface allows you to draw curves for the various parameters of each waveform, in addition to entering text or moving sliders to set their values (Figure 4). When everything is properly defined, you press the Play button; after a slight pause, you'll hear the sound, which you can save to disk. You can also save just the design of the sound, and many design examples are included with the program.

Stomper is freeware, but the author requests that you send him copies of any music you make that includes 'Stomped' sounds. Seems like a reasonable exchange for a program that's this much fun to use!

www.lysator.liu.se/~zap/stomper....

  • AUDIO ARCHITECT

Audio Architect, from the Karnataka Group, is a developing product that should have a number of enhancements by the time you read this. Currently, version 1.0 offers several synthesis modules including an oscillator that can produce sine, saw and square waves plus noise; an 8‑tap FIR filter, a 4‑input mixer, and an ADSR envelope generator (Figure 5). These modules can be varied over time, and a 16‑step sequencer unit that can run three independent 'channels' simultaneously is also available as a control source.

Just as in the next three programs of this type, icons that represent the various sound components are arranged on a workspace and patched together. The program then compiles your sound into a file on your drive at any of the common sample rates. There's no way to play your sounds directly from within the program (to be remedied in the next release), and you must set the sample rate for every sound individually (a global setting would be useful), but the program provides enough tools to make some interesting sounds, as the included examples make clear.

www.karnataka.co.uk/aa/

  • FX

FX 1.5, by Nick Jones, is a free program that provides several dozen modules for designing sounds. The interface consists of a group of icons, which appear on the left of the screen, and a work area for hooking them together on the right (Figure 6). You'll find a 'Wavgen' module for generating several common static waveforms, complete with an input control that can modulate the waveform's frequency over time. There's also a noise generator which can be filtered to create any band of frequencies you need, and a plucked string model with variable damping and frequency controls.

On the processing side, FX offers a delay line, low‑pass and high‑pass filters, and reverse, distort and echo effects, among others. Several mathematical functions can be included in your design, to process sounds or create control signals, while a mixer, envelope generator and faders are also part of the basic arsenal. Another useful function is the sequencer tool, which allows you to sequence up to 14 audio files from your hard drive and trigger them repeatedly. Files can overlap in the sequence, which can be repeated any number of times. The program includes thorough on‑line help and several well‑documented examples. And you can't beat that price!

www.winsite.com/info/pc/win95/so...

  • WAVECRAFT

Wavecraft, which was covered in SOS back in October, 1996, is a synthesis program that's especially well suited to creating analogue‑style sounds. The shareware version has somewhat limited capabilities, but provides a good orientation to the program. For example, to design a looping techno sound, load an oscillator and any filters you want, then use the 16‑note sequencer to control its frequency. Next, trigger the sequencer with a clock source, where you've set your desired tempo. To vary the clock's speed, design an envelope using the 8‑stage envelope generator and wire it to the clock, then send the oscillator's output to the File Dump icon (the program's output module), and generate the soundfile. Save the file to your disk if you wish, or return to the design to make any additional modifications.

Analogue synth fans will appreciate Wavecraft's Glide Generator, which adds a bit of portamento to notes that are triggered by the sequencer, and its Sample and Hold function. The 'voltage controlled' amp and the numerous control sources will also come in handy. Though Wavecraft doesn't provide modules for many different synthesis methods, it's very good at what it does and offers numerous examples that you can tweak or use straight away. A recent dramatic price reduction make the program exceptionally good value.

www.lastunicorn.com/wavecrft.html

  • VIRTUAL WAVES

The most advanced software synthesis program in this group is surely Virtual Waves 2.0 from Synoptic. This French program, which is offered in an excellent English translation, provides synthesis options that I have yet to see on even the most advanced hardware synthesizers. For example, the FOF generator, based on the fixed‑formant synthesis technique developed at IRCAM, is a powerful tool for synthesizing speech sounds, while the Spectral Scratchpad, where you can draw or 'spray' a sound's spectrum onto a blank slate, is unlike anything I've seen. Combined with an excellent user interface, dozens of example files and thorough on‑line help, these make this program an easy winner in the graphic sound‑design category.

VWaves' toolkit is organised into three main groups (Figure 7). First are the Generator Modules, which provide audio or control signals that you'll use in your sounds. Among the 16 different editable audio sources are an 8‑partial additive synthesis tool which displays the composite waveform as you alter the amplitude and frequencies of each partial, and a 6‑operator FM synthesis module which includes 32 preset algorithms for creating an infinite number of time‑varying spectra.

With the more sophisticated software synthesis programs, you can create an unlimited variety of sounds using every major synthesis technique available today.

Rather than generate note events, which is the more common approach, VWaves' Cellular Automata function allows you to build sounds by specifying 'rules' that control their spectral content. This 'algorithmic sound generator' combines up to 32 different partials, which are turned on and off according to the criteria you set. If you're interested in physical modelling, VWaves provides both string and reed models to experiment with — or if you've always wanted a Korg Wavestation but couldn't cut the price, you can try the 50‑step Wave Sequencer, which offers many of the settings used in the Wavestation's wave sequence element.

Among the processes you can use to alter your sounds are familiar effects such as a flanger, delays, and a compressor/expander, plus a reverb section with an endless number of settings. I especially like the reverb's ability to model various room characteristics, such as room length, width and height, but the real gem is that you can specify the absorption materials for each of four walls — these include marble, plaster, glass, and concrete. A Harmoniser module offers 5‑part pitch‑shifting of a source signal, while the time stretcher, which allows a sound to be expanded up to 200%, produces cleaner results than most others I've heard, especially when stretching long sounds.

Less familiar editing options include Cut‑up, which granulates a sound by adding silences or removing chunks of the sample at specified intervals; and Metamorphosis, which morphs two sources by either interpolating the sounds' spectra or replacing the frequencies of the first with those of the second sound. Vectorial Mixer is modelled after the vector synthesis routines of some Yamaha and Korg hardware, and allows controlled mixing of up to four sources.

Working with VWaves is simply a pleasure. It's loaded with shortcuts that get you to your goal in a minimum of time — such as a sound design 'assistant' that automates the creation of many types of sounds — and, except for the addition of an Undo feature, I can't imagine how it could be improved. The CD‑ROM is loaded with great‑sounding samples that you can use as source material, and the on‑line tutorials cover many major functions of the program. This software is far and away the best in its class!

www.synoptic.net/vwaves.htm

This concludes the first half of our software synthesis survey. Next month I'll cover a number of systems that add hardware to your PC to accelerate the sound creation process, as well as taking a close look at Csound, the most powerful sound‑programming language available. Stay tuned!

Beginnings

Software sound synthesis first became a viable technology when Max Matthews and his colleagues at Bell Labs in New Jersey developed a computer language for programming sound in the late 1950s. Matthews' approach was modelled along the lines of the traditional electronic studio of the day: it used software modules such as reverbs, filters and oscillators which could be 'patched' together in any combination. The composer specified the design of the sound using these modules, and the resulting design was compiled into samples by the programming language. The tape containing the samples (there were no hard disks at the time!) was then usually taken to another computer, often at another facility, where it could be converted into actual sound. Digital‑to‑Analogue converters were very rare at this stage of the game.

Matthews' first programs became known collectively as the Music N series, as he named them in the sequence Music 1, Music 2, and so on. Soon, other research institutions and universities — the only places with access to the necessary hardware — got into the picture and either modified Matthews' code or developed their own. Currently, there are several programs available that are direct descendants of Matthews' original work, most notably Csound, which I'll cover in the second part of this survey.

Software Synths At A Glance

PRODUCTVERSIONMANUFACTURERCOSTWEB SITE
S‑YG20 Soft Synthesizer betaYamahanot available yetwww.yamaha.co.uk/html/midplug/m_...
VSC550W Virtual Sound Canvas 1.0Roland$99www.roland.co.uk/intl.htm
RealitybetaSeer Systems$495www.seersystems.com/pages/profpr...
VAZalpha 8Martin Fayfreewww.cp.umist.ac.uk/users/martin/...
Rubber Duckie0.85BDeLusion$15 or 20DMwww.waste.uni‑essen.de/d‑lusion/
ReBirth alpha 3Propellerheads$199 when availablewww.propellerheads.se
SubSynth1.01Martin Stone£12www.users.dircon.co.uk/~martin‑s/
Stomper 0.97BZAPfreewww.lysator.liu.se/~zap/stomper....
Audio Architect 1.0evaluation Karnatakafreewww.karnataka.co.uk/aa/
FX1.5Nick Jonesfreewww.winsite.com/info/pc/win95/so...
Wavecraft 1.0AudioVirtual£29www.lastunicorn.com/wavecrft.html
Virtual Waves 2.0Synoptic$199www.synoptic.net/vwaves.htm
You'll find that many of these sites are listed on the page: www.xs4all.nl/~rexbo/pc_synth.htm