- Oscillator and Filter Algorithms for Virtual Analog Synthesis†
Virtual analog synthesis refers to computational methods that imitate the sound production principles used in electronic music synthesizers of the 1960s and 1970s. In practice, it means digital subtractive synthesis. In this paper, we introduce new methods to generate digital versions of classical analog waveforms with reduced aliasing. We also propose modifications to the digital nonlinear model of the Moog ladder filter. These virtual analog synthesis techniques enable the production of retro sounds with modern computers.
Virtual analog synthesis refers to computational simulation of the sound generation principles of analog synthesizers of the 1960s and 1970s. In practice, it means digital subtractive synthesis. The basic principle in subtractive synthesis is, first, to generate a signal with rich spectral content, and then to filter that signal with a time-varying resonant filter.
Virtual analog synthesis became a popular commercial term around 1995, when Clavia introduced the Nord Lead 1 synthesizer, which was marketed as an analog-sounding digital synthesizer that uses no samples (Clavia 2002). Instead, all sounds were generated by simulating analog subtractive synthesis. Previously, the Roland D-50 synthesizer of the late 1980s worked in a similar way, although it contained sampled sounds. An early example of an attempt to design a digital synthesizer that sounds analog was Synergy (Kaplan 1981).
Design and implementation of digital subtractive synthesis are more demanding than is generally understood, because imitating analog electronics with digital processing is not as easy as it may seem. One problem is aliasing caused by sampling of analog waveforms that have rapid changes. The spectra of such waveforms contain infinitely high frequencies, and the signals are thus not band-limited. Another difficulty is that analog filters do not obey simple linear theory. With high signal levels they generate distortion. This does not naturally occur in digital processing, but it must be designed and implemented on purpose (Rossum 1992; Huovilainen 2004).
In this paper, we discuss new versions of oscillator and resonant filtering algorithms that can sound like old analog synthesizers. Computationally very efficient oscillator algorithms not requiring wave-tables and having reduced aliasing distortion are proposed for classical waveforms used in subtractive synthesis. These algorithms are modifications and extensions of the digital sawtooth waveform algorithm based on the differentiated parabolic wave (DPW) proposed recently by Välimäki (2005).
A new digital resonant filter structure is also proposed for subtractive synthesis. It is a modified version of the nonlinear digital Moog ladder filter introduced previously by Huovilainen (2004). The new structure reduces the computational cost of the nonlinear digital Moog filter by using a single nonlinearity instead of five nonlinear functions inside filter sections. The new digital Moog filter structure also decouples fairly well the cutoff and the resonance parameters and offers several response types by selecting a weighted sum of different output points.
Analog Subtractive Synthesis
The electronic music modules introduced by Robert A. Moog in the mid-1960s are one of the most important innovations in music technology (Moog 1965). A few years later, his company introduced products where the various modules, such as oscillators, filters, and amplifiers, were integrated into a [End Page 19] single portable unit. Subtractive synthesis was the main principle used in these instruments. The Minimoog was one of the most popular analog synthesizers in the 1970s.
Click for larger view
View full resolution
The Prophet 5 synthesizer introduced by Sequential Circuits in 1979 has microprocessor controlled electronics, but it is still an analog synthesizer. Its block diagram, shown in Figure 1, is today a classic example of the subtractive synthesis principle. It includes two oscillators, a resonant low-pass filter, and two envelope generators (ADSR in Figure 1 stands for attack time, decay time, sustain level, and release time). There are a couple of alternative waveforms available together with a noise source.
The sharp corners of geometric waveforms, such as the sawtooth or the square wave, cause aliasing because such signals are not band-limited. Three different classes of methods are...