Skip to main content

A Survey of Nonstandard Oscillators

This is a collection of synthesis algorithms that meet the following criteria:

  1. They must synthesize pitched tones — periodic or quasiperiodic waveforms.

  2. I can include or exclude anything at my arbitrary discretion. I’m biased towards algorithms that are parametric rather than data- or sample-driven.

Algorithms that meet these criteria and fall outside of the typical cuisines of subtractive, FM/PM, wavetable, and additive synthesis are what I call nonstandard oscillators, hence the title. An earlier version of this post left it at just nonstandard oscillators, but I’ve also added in the more vanilla ones for comparison.

Many of these descriptions are intentionally brief, and I add detail only if I feel I have something useful to add or if the topic is particularly obscure. Many algorithms overlap, some are generalizations of others.

As a word of caution, inexperienced and information-hungry computer musicians find nonstandard synthesis methods particularly attractive because FM and subtractive have gotten too “basic” for them. (This is autobiographical here.) If you’re tired of “standard” synthesis methods, you haven’t spent enough time with them — FM and subtractive are capable some incredibly far-out and alien sounds, many yet to be discovered. I do encourage you to try out the wilder methods here, but nonstandard synthesis is not a panacea that will make your sound design good. Only practice can make your sound design good.

Last updated: 2024-01-17.

Additive synthesis

Added 2023-12-17.

Additive synthesis traditionally uses a bank of sine waves tuned to integer partials of a fundamental. The possibilities for algorithms implemented in the additive domain are tremendous: EQ filters, phaser, chorus, reverb, multiband dynamics, etc. all have their own bizarro-world additive versions. Harmor and Razor are good sources of inspiration for such algorithms. Additive synthesis also lends itself very well to interesting use of spatialization, even with only two channels.

Allpass phase distortion synthesis

Added 2024-01-02.

See [Pekonen2008]. Take a “carrier” sine wave oscillator and run it through a one-pole allpass filter whose coefficient is rapidly modulated using another oscillating signal of the same frequency. (Because allpass filters rotate phase, there is a relationship here to phase distortion synthesis, although the implementation is very different.)

Bitwise logical modulation

Added 2023-01-13.

Two oscillators – sine waves are used in examples – are quantized in amplitude and combined with bitwise operations such as AND, OR, or XOR [Kleimola2008]. One oscillator may be zero frequency, effectively acting as a discontinous waveshaper on the other oscillator.

Dynamic Stochastic Synthesis / Breakpoint Synthesis / Gendy

Attributed to Iannis Xenakis, Dynamic Stochastic Synthesis uses a piecewise linear function whose breakpoints (critical points) are randomly jostled around every period [Serra1993]. It is possible for the pitch period to change, but you can also clamp it to a fixed pitch if desired. See [Radna2023] for an extension hybridizing this method with wavetable synthesis.

Bytebeat

Added 2023-02-22.

Bytebeat refers to 8-bit music produced with one-liners in C, extensively using bitwise operations, and is associated with demoscene culture. [Heikkilä2011] A full work of bytebeat is assumed to have rhythm, melody, and form, but a small slice of the concept allows us to make standalone oscillators too.

In the “TOY*” mode in Mutable Instruments’ Braids Eurorack module [Gillet2015], the formula (((t ^ (x << 1)) & ~x) + (x >> 1)) % 256 is used to synthesize an oscillator where t is an unsigned 8-bit phase value and x is an unsigned 8-bit timbre parameter. The exact details of the bitwise operators are not particularly important. For additional tones mimicking circuit bending, the oscillator’s output is fed through a sample rate reducer.

Discrete summation formulas (DSF)

This is a nearly 50-year-old algorithm for generating summed sine waves evenly spaced in linear frequency [Moorer1975]. You can control the spectral tilt, but partial amplitudes are monotonic. Inharmonicity is also possible.

DSF can generate a finite range of partials, and therefore produce perfectly bandlimited waveforms. DSF is the underlying algorithm to synthesize bandlimited impulse trains in Csound and SuperCollider.

The real musicality of DSFs is found in combining more than one of them. Given a fundamental, you can separately synthesize harmonics 1-5, harmonics 6-10, harmonics 11-31 but only the odd-numbered ones, etc., apply different spectral tilts to each one, and mix them together to produce an oscillator with a complex spectrum and lots of control.

Fake resonance

Made famous by the Casio CZ series, fake resonance is produced by taking a hard synced sine wave oscillator and windowing each pitch period with a decaying envelope to simulate a highly resonant filter being pinged by an oscillator. Fake lowpass, bandpass, and highpass waveforms are possible with all integer harmonics (saw wave-style) or odd harmonics only (pulse wave-style) [Gillet2015], although the highpass configuration produces discontinuities therefore strong aliasing (unless an aliasing suppression method such as PolyBLEP is used).

FOF (formant-wave-function) synthesis

Added 2024-01-02.

FOF is a granular synthesis method for creating formants [Rodet1984]. Each grain is a sine wave tuned to the formant frequency and then enveloped with an attack and decay; Rodet uses an exponential decay multiplied by a cosine-shaped fade in. To produce a single formant, a new grain is launched every pitch period, and allowed to overlap with future grains. Parameters are the formant frequency, attack and decay times, and initial phase. Multiple FOF synthesizers may be added together to synthesize instruments and vocals as done in the CHANT synthesizer.

FM/PM synthesis

Added 2023-12-17.

Made famous by Yamaha, FM’s basic unit is a standard wavetable oscillator. Timbres are explored by allowing oscillators to modulate each others’ frequencies.

Phase modulation synthesis is conceptually similar, and in fact two-op oscillator FM is equivalent to two-op PM but with an integrator added as a post-processing step after the modulating oscillator (as phase is the integral of frequency).

The Casio VZ series’ iPD (“interactive phase distortion”) has nothing to do with actual phase distortion, and is actually mostly a PM synthesizer with some zing modulation support.

Hypergrowl

Added 2023-01-01.

Hypergrowl is a technique for creating a variable wavetable, demonstrated by electronic musician Au5 in a popular YouTube tutorial using Serum. Many slightly detuned square waves are synthesized at say 100 Hz, and the resulting signal is sliced into 100 Hz pitch periods and chopped up into a variable wavetable. Then those variable wavetables are again synthesized at 100 Hz with detuning and modulation of wavetable position, and the output signal is chopped up and resampled into wavetables again. The process is repeated several times until an extremely complex variable wavetable is produced. As a final optional touch, the even harmonics are removed from the wavetables by altering the Fourier series.

IXA synthesis

See my last blog post. IXA is a variant of PM synthesis, but with a distorted phase on the carrier oscillator so a sine wave is produced when the index is zero.

Karplus-Strong synthesis

Added 2023-05-06.

An exciter is fed through a short feedback delay line so an audible pitch is produced. Attenuation and a one-pole lowpass filter are usually placed in the loop. The phase response of any filter(s) in the loop can introduce varying degrees of inharmonicity.

Short bursts of noise are customary as exciter signals, producing fairly convincing plucked string sounds. Other signals can be used as well – I really like the sound of rapid sine wave chirps as exciters.

Karplus-Strong synthesis was a precursor to Digital Waveguide Synthesis (DWG). I haven’t included DWG here as I consider it too general to really qualify as an oscillator.

Linear Automata Synthesis (LASy)

Added 2024-01-02.

In [Chareyron1990], a simple but clever approach to combining cellular automata with wavetable synthesis was presented:

  1. Start with a discrete-valued signal whose samples range from 0 to n - 1 inclusive.

  2. Add an r-sample delay. The initial state of the delay line memory is quite important, and it can be filled with any waveform of choice.

  3. Take the last k samples to produce a tuple of k integers.

  4. Run the result into a lookup table that maps these tuples to a single value from 0 to n - 1 inclusive.

  5. Feed back into the input.

The r-sample delay line memory acts as the tape of a 1D cellular automaton, and the lookup table is its rule set. As the space of possible lookup tables quickly grows unwieldy, Chareyron suggests as a starting point using k = 3 and a lookup table that depends only on the sum of the three last samples of input. This cross section alone turns out to be quite powerful in its ability to self-generate modulating timbres.

The Newtonator

Added 2024-02-06.

The Newtonator is an old open-source LV2 plugin where waveforms are synthesized with a simple physics simulation of a single particle moving in one dimension, with its position over time directly sonified as sample values. In its most basic settings, the Newtonator simulates a particle in constant acceleration if its position is above the “floor,” and if below the floor it has the same acceleration but with a sign flip. This produces a sine-wave-like oscillator with parabolic segments.

By adding more physical phenomena, a wider variety of sounds is possible. The Newtonator provides many options for this: the particle can undergo collisions of varying elasticity with one or more obstacles, the positions of the floor and obstacles can modulate, there may be a “dead zone” near the floor where acceleration is 0 and the particle has constant velocity, and many others. To help ensure the generation of pitched tones, periodically the velocity is “reset” (by a mechanism I confess don’t quite understand).

OkiComputer

Added 2023-01-12.

NI Reaktor’s OkiComputer is a wavetable synthesizer with a row of 16 configurable “cells,” each of which has separate controls for wavetable, amplitude, integer frequency ratio, phase offset, phase distortion, and a combined “sample rate reducer” and bitcrusher. The “sample rate reducer” isn’t one in the traditional sense, and perhaps better described as time quantization of phase so that the sample rate scales with the frequency of the oscillator; this is the main thing that I find novel about OkiComputer. The output is produced by crossfading between consecutive cells, making it akin to Vector Synthesis and Wave Sequencing Synthesis.

Although not part of the oscillator, a key part of OkiComputer’s sound is the downstream chorus, followed by another sample rate reducer and bitcrusher. The synth excels at aggressively digital bass sounds, particularly with the sample rate reducer and bitcrusher. EPROM used it in his 2011 banger “Feldspar,” see his Reddit comment.

Oscillator sync

Oscillator hard sync consists of an oscillator and an impulse train that resets the phase of said oscillator. The impulse train determines the fundamental frequency, while the oscillator’s intrinsic frequency creates a screaming formant at that frequency. Traditionally the oscillator is a saw or pulse, but any wavetable can be used.

There are other variants such as soft sync and reverse sync. Soft sync resets the oscillator only if the phase is below a certain threshold, but generally does not produce periodic waveforms. Reverse sync multiplies the oscillator’s frequency by -1 when a trigger is received.

Phase distortion synthesis (PD)

Introduced in the Casio CZ series, phase distortion synthesis allows transformation of a sine wave by altering the phase ramp with a nonlinearity [Casio].

Polygonal waveform synthesis

Polygonal waveform synthesis sonifies a regular polygon (especially a star polygon) by sweeping circularly and interpreting the X and/or Y coordinates as a waveform [Hohnerlein2016].

Pulsar synthesis

Added 2022-07-31.

Pulsar synthesis [Roads2001], developed by Curtis Roads and Alberto de Campo, consists of a short, arbitrary waveform followed by a length of silence, and the two are then alternated and looped to form a periodic oscillation at the fundamental frequency. The short waveform may be played back at any speed. The reciprocal of the length of the pulsaret in seconds is usually heard as a formant.

See my post titled “Pulsar Synthesis.”

Raster scanning synthesis

Added 2022-02-27.

This is a form of time-domain image sonification where an image’s color values are translated directly into digital sample values and unraveled in reading order [Yeo2006]. The strong correlations between successive rows of a typical image result in an audible pitch period with evolving timbre. Images can be sourced from photos, drawings, live footage, etc. or generated algorithmically. This method is a cousin of scanned synthesis.

Raster scanning can also be used for converting periodic sounds to images, applying image filters to sounds, or applying audio effects to images.

Scanned synthesis

Scanned synthesis is wavetable synthesis where the wavetable is taken from a physical model that evolves slowly (not the audio-rate physical models of instruments) [Verplank2000]. The wavetable can also come from a physical interface or even video. In a way, scanned synthesis is sonification of any evolving entity as a wavetable. For an impressive application of two-dimensional scanned synthesis in a multitouch context, see Robert Tubb’s Wablet [Tubb2011].

Subtractive synthesis

Added 2023-12-17.

“Subtractive synthesis” can refer to any use of a filter to shape timbre, but here I’m talking in the narrower sense about subtractive synthesis found in analog synths (and synths that are analog at heart). The sound sources here are those for which VCOs have practical implementations: sawtooth, pulse with PWM, triangle, sine. The filter is traditionally a resonant lowpass filter, but many synths offer bandpass and highpass options.

Tropical additive synthesis

Added 2022-12-14.

Tropical additive synthesis starts with a set of sine wave oscillators of amplitude 1, adds user-controllable dc offsets to each, and takes the minimum of all the signals at every point in time [Bocci].

If the partials are tuned a harmonic series or a subset of it, the waveform is periodic just like ordinary additive synthesis. Unlike additive synthesis, the perceived timbre is highly sensitive to the relative phases of the partials. Tropical additive synthesis tends to produce rich, buzzy spectra resembling a fuzz pedal on an electric guitar.

Vector phase shaping (VPS)

This is a take on phase distortion that adds a second dimension of timbral control [Kleimola2011]. It can generate formants.

Vector synthesis

Added 2023-02-15.

Vector synthesis is a variant of wavetable synthesis first developed in the Prophet VS. It employs four static wavetable oscillators running in parallel, allowing the user to pick from many built-in waveforms. The four oscillators are associated with the four corners of a square, and a two-dimensional control mixes between them. This control can be modulated manually with a joystick or automatically with separate LFO and envelope controls for the X and Y coordinates. The oscillators may be individually detuned and/or modulated in pitch by oscillators.

The mixed oscillator is typically processed with a filter.

Vocal FM synthesis

This patented method modifies FM synthesis to be used as a formant synthesizer [Chafe]. Technically, FM can already be used to synthesize formants, by using both sine waves for the carrier and modulator and setting the modulator frequency to be a large multiple of the carrier frequency, but Chafe’s research fixes issues when the fundamental or formant is modulated over time.

VOSIM

Smooth pulses of varying lengths and amplitudes, formed by the function sin(x)^2, are concatenated to produce formants [Kaegi1972]. This makes VOSIM useful as a rudimentary vowel synthesizer.

Walsh function oscillators

Added 2024-01-30.

The Walsh-Hadamard Transform (WHT) is bit like the Discrete Fourier Transform, but sine waves are replaced with Walsh functions, which are a certain set of digital signals with only sample values of -1 and 1. Some, all though not all, of the Walsh functions are square waves at octaves of a fundamental. Any digital signal with a power-of-two number of samples can be represented as a linear combination of Walsh functions. Thus a Walsh function additive synthesizer naturally results from this, and many standard additive synthesis formulas can be ported over to Walsh functions. See [Tillman2020].

A sawtooth wave has a particularly simple WHT, allowing it to be expressed in terms of square waves. Some hardware synthesizers using DCOs (digitally controlled oscillators) synthesized their saw waves using such a sum of square waves, but did so imperfectly, and the flaws in the resulting saw wave are quite unique to this synthesis method [Gabrielli2019].

Wave Sequencing Synthesis

Added 2023-01-01, updated 2024-01-02.

The Cheetah MS800 is an obscure and not well-liked synthesizer released in 1989, marketing its synthesis method as “Digital Wave Sequencing Synthesis.” The device is a wavetable synthesizer with 20 built-in single-cycle waveforms. Evolving timbres are created with a sequence of commands of the form “crossfade to wavetable #X over Y seconds.” There is also a GOTO command which allows creating a loop point in the command sequence, and a specially designated command that is jumped to when a MIDI note is released.

Unlike other wavetable synthesizers, the MS800 has no filter at all, so timbral variation can only be generated by crossfading between wavetables. While the Cheetah presents the purest form of this, the core idea of crossfading among wavetables is also found in the Keytek CTS-2000, and some Ensoniq synths including the SD-1 and TS-10 (thanks miunau for the tip).

Wavetable synthesis

Added 2023-12-17.

The original meaning of “wavetable synthesis” meant a waveform produced by playing back a single buffer with repetition to produce a perfectly periodic signal. With the rise in popularity of Massive and Serum, the popular meaning of “wavetable synthesis” generalized to a two-dimensional buffer, allowing crossfading between a continuous bank of one-dimensional wavetables and therefore adding a dimension of timbre control. I call them “static wavetable synthesis” and “variable wavetable synthesis” to disambiguate them.

This is a very general way to synthesize an oscillator. A common choice is to use wavetables sourced by sampling audio. Serum offers the option to provide an audio sample and chop it up into a 2D wavetable. Wavetables can also be created from scratch with various editing methods, one of the most interesting ones being 2D wavetables based on mathematical formulas.

Wavefolding

A waveform, usually a sine wave, is waveshaped with a continuous but nonmonotonic nonlinear transfer function. Timbre is evolved by changing how hard the nonlinearity is driven.

Zing modulation

Zing modulation, as named in Rossum Electro-Music’s Trident/Triton, is just multiplying two oscillators together in the time domain, with the stipulation that both input signals are oscillators tuned to a simple ratio. It is therefore a special case of ring modulation.

Non-qualifiers

These techniques are worth a mention, but don’t really make the list for me:

  • Chaotic dynamical systems generally don’t produce pitched tones when directly mapped to time domain. There’s also too many of them.

  • Sophisticated physical modelling methods like modal synthesis, waveguide synthesis, and finite difference methods are highly general methods and can synthesize both pitched and unpitched tones. I guess that’s also true of many methods that are on the list, but see Rule 2.

  • A number of synthesizers use a sampled transient together with a standard oscillator for instrument body. There are some marketing terms for this out there like “linear additive synthesis” and “vowel-consonant synthesis.” Combining sampled onsets with oscillators a smart idea, but it’s not really a novel kind of oscillator in its own right. My bias against samples may be speaking here though.

References

[Moorer1975]

Moorer, James A. 1975. “The Synthesis of Complex Audio Spectra by Means of Discrete Summation Formulae.”

[Casio]

–. Date unknown. Casio CZ-1 Operation Manual.

[Gillet2015] (1,2)

Gillet, Emilie. Source code to Mutable Instruments Braids.

[Serra1993]

Serra, Marie-Hélène. 1993. “Stochastic Composition and Stochastic Timbre: GENDY3 by Iannis Xenakis.” Perspectives of New Music, Vol. 13, No. 1 (Winter, 1993), pp. 236-357.

[Verplank2000]

Verplank, Bill; Matthews, Max; and Shaw, Robert. Circa 2000. “Scanned Synthesis.”

[Tubb2011]

Tubb, Robert. 2011. “The Wablet: An Investigation into Scanned Synthesis and Multi-Touch.” Queen Mary University of London MSc project report.

[Kaegi1972]

Kaegi, Werner and Tempelaars, Stan. 1978. “VOSIM – A New Sound Synthesis System.” Journal of the Audio Engineering Society, Vol. 26, No. 6.

[Kleimola2011]

Kleimola, Jari et al. 2011. “Vector Phaseshaping Synthesis.” Proc. 14th Int. Conf. on Digital Audio Effects (DAFx-11).

[Hohnerlein2016]

Hohnerlein, Christoph; Rest, Maximilian; and Smith, Julius O. 2016. “Continuous Order Polygon Waveform Synthesis.” Proc. Int. Computer Music Conf.

[Chafe]

Chafe, Chris. Date unknown. “Glitch Free FM Vocal Synthesis.”

[Roads2001]

Roads, Curtis. 2001. Microsound.

[Bocci]

Bocci, C. and Sancristoforo, G. Date unknown. “Tropical Additive Synthesis.”

[Kleimola2008]

Kleimola, Jari. 2008. “Audio Synthesis by Bitwise Logical Modulation.”

[Heikkilä2011]

Heikkilä, Ville-Matias. 2011. “Discovering novel computer music techniques by exploring the space of short computer programs.”

[Yeo2006]

Yeo, Woon Seung and Berger, Jonathan. 2006. “Raster Scanning: A New Approach to Image Sonification, Sound Visualization, Sound Analysis And Synthesis.”

[Rodet1984]

Rodet, Xavier. 1984. “Time-Domain Formant-Wave-Function Synthesis.”

[Chareyron1990]

Chareyron, Jacques. 1990. “Digital Synthesis of Self-modifying Waveforms by Means of Linear Automata.”

[Pekonen2008]

Pekonen, Jussi. 2008. “Coefficient-Modulated First-Order Allpass Filter as Distortion Effect.”

[Tillman2020]

Tillman, J. Donald. 2020. “Exploring Walsh Functions.”

[Gabrielli2019]

Gabrielli, Leonardo et al. 2019. “Analysis and Emulation of Early Digitally-Controlled Oscillators Based on the Walsh-Hadamard Transform.”

[Radna2023]

Radna, Raphael. 2023. “Dynamic Stochastic Wavetable Synthesis.”