Skip to content

Synthesis Basics

A synthesizer is an instrument that generates sound from scratch instead of playing back a recording. There is no microphone and no audio file behind a synth note: the computer calculates the waveform sample by sample, in real time. That is the single idea that separates a synthesizer from a sampled instrument, which plays back recorded audio.

This page explains the building blocks every synth shares, then introduces the fifteen synthesis families (engines) you can choose from. It is concepts only — no code.

Why generate instead of record?

A generated note can be any pitch, any length, and any tone, with no storage cost and no "stretching a recording" artifacts. The trade-off is that the sound has to be designed: someone picks a waveform, shapes it, and decides how it evolves. That design is called a patch.

The three classic blocks

Most synth sounds, however complex, come from a chain of three stages. Signal flows left to right, and each stage hands off a more finished signal to the next: the oscillator's raw tone is shaped by the filter, then the filter's shaped tone is given a volume shape by the amplifier.

Subtractive signal chain
raw tonetone shapingloudnessOscillatorFilterAmplifierOutput

1. Oscillator — the raw tone

The oscillator produces a continuous, repeating wave at the pitch of the note. Its waveform decides the raw color of the sound, because each shape contains a different mix of harmonics (the overtones stacked above the fundamental pitch):

WaveformSounds likeWhy
SinePure, hollow, flute-ishOnly the fundamental, no overtones
SawtoothBright, buzzy, fullAll harmonics — the classic synth lead/bass tone
SquareHollow, woody, "reedy"Only odd harmonics
TriangleSoft, mellowOdd harmonics, but much weaker — close to a sine
NoiseA hiss, no pitchAll frequencies at once — used for percussion, wind, breath
SIGNAL · HARMONICSIDLE
Waveform and spectrum — where harmonics come from

The top panel is the wave in time; the bottom is its spectrum. A sine has only its fundamental, while a saw stacks every harmonic and a square only the odd ones — switch the shape and watch the comb appear.

Waveform
Frequency
220 Hz

2. Filter — shaping the tone

A filter removes or boosts part of the frequency content. The most common is a lowpass filter, which keeps the low frequencies and rolls off the highs. Two controls matter:

  • Cutoff — the frequency where the filter starts removing energy. Lower the cutoff and the sound gets darker and muffled; raise it and it brightens.
  • Resonance — a boost right at the cutoff frequency. A little adds a vocal "wah" emphasis; a lot makes the filter ring and whistle.

Sweeping the cutoff over time is the single most recognizable synth gesture — see Envelopes and Modulation for how to create that movement.

SYNTH · SUBTRACTIVEIDLE
Lowpass filter — cutoff, resonance, and model

A sawtooth through a lowpass filter — the single most recognizable synth gesture. Lower the cutoff and the high harmonics roll off, so the tone darkens; raise the resonance and the filter rings at the cutoff, adding the vocal "wah". The model selects the filter circuit being emulated: the SVF stays clean, while the ladder and Sallen-Key models saturate and can self-oscillate at high resonance. The bottom scope is the waveshape; press play to hear it.

Cutoff
2200 Hz
Resonance
3
Filter model

3. Amplifier — the loudness over time

The amplifier controls the volume of the note from the instant a key is pressed until it fully fades. A raw oscillator just drones forever; the amplifier, controlled by an envelope, gives the note a beginning, a body, and an end — a plucked attack, a slow swell, a long tail.

SYNTH · SUBTRACTIVEIDLE
ADSR envelope — how a note rises and falls

The same held A3, shaped by its amplitude envelope. Attack and decay set how the note reaches and leaves its peak; sustain is the level it holds while a key is down; release is the fade after the key lifts. The top outline is that envelope — drag a control and watch the shape, then press play to hear it. (Pull sustain all the way to zero and the note decays to silence while the key is still down: a plucked shape rather than a held one.)

Attack
8 ms
Decay
140 ms
Sustain
0.75
Release
280 ms

The fifteen synthesis families

The blocks above describe subtractive synthesis, but it is only one way to make sound. NativeSynth, libsonare's built-in instrument engine, offers fifteen engines, each suited to different instruments:

EngineHow it makes soundGood for
Subtractive / virtual-analogOscillator → filter → amplifier (the classic chain above)Leads, basses, pads
FMOne oscillator modulates another oscillator's pitchMetallic tones, bells, electric pianos, clavinet
Karplus-StrongA short feedback delay loop models a vibrating stringPlucked strings, guitars, harp, harpsichord
ModalA bank of tuned resonators models a struck objectMarimba, glockenspiel, struck bars and bells
Additive / drawbarSums many harmonic sine partials, like organ drawbarsHammond-style organs, harmonic pads
Membrane percussionModels the vibration modes of a drumheadDrums, toms, percussion
Extended-waveguide pianoA physical model of struck piano stringsAcoustic piano
Pipe organSustained flue-pipe waveguides with wind and rank behaviorChurch organ stops
Bowed stringA friction-excited string waveguideViolin, viola, cello, contrabass
Reed woodwindA reed and bore waveguideClarinet, saxophones, oboe, bassoon
BrassA lip-reed brass waveguideTrumpet, trombone, tuba, horns
FluteAn air jet exciting an open-pipe waveguideFlute, recorder, pan flute, whistles
Buzzing-bridge plucked stringA plucked string whose bridge can be made to graze it and spray energy into the upper partials; at buzz 0 the termination stays clean (harp, koto)Sitar, koto, harp
Source-filter vocalA glottal source (a buzzy sawtooth) shaped by a bank of vowel formant resonators (the resonant peaks that make one vowel sound different from another)Choir and solo-voice vowels
Free reedA driven metal tongue swinging through a slot; adding a second tongue a few cents sharp of it gives the shimmering musette beatAccordion, harmonica, bandoneon

FM in one sentence

In FM (frequency modulation) synthesis, instead of filtering a rich waveform, you take two simple sine oscillators and let one wobble the other's pitch very fast. The result is a complex, often metallic or bell-like tone that subtractive synthesis cannot easily make.

Several of these — Karplus-Strong, modal, piano, pipe organ, bowed string, reed, brass, flute, buzzing-bridge plucked string, source-filter vocal, and free reed — are physical modeling: instead of stacking waveforms, they approximate the behavior of a vibrating object (a string, a metal bar, a pipe, a reed, the vocal tract, or an air jet). In libsonare's current NativeSynth these acoustic-style models are still provisional and being calibrated, so treat them as data-free preview/fallback voices rather than finished instrument simulations.

Filter character

The character of the filter itself can be changed. NativeSynth provides four filter models, each with a different flavor of resonance and saturation:

  • svf — a clean, flexible state-variable filter (the neutral default).
  • moog-ladder — the warm, fat ladder filter character of classic analog mono-synths.
  • diode-ladder — a grittier ladder variant with a more aggressive bite.
  • sallen-key — a smooth, musical filter associated with another lineage of classic synths.
How libsonare implements this

NativeSynth is configured with a SynthPatch. Its engineMode field selects one of the fifteen engines ('subtractive', 'fm', 'karplus-strong', 'modal', 'additive', 'percussion', 'piano', 'pipe-organ', 'bowed-string', 'reed', 'brass', 'flute', 'plucked-string', 'vocal', 'free-reed'), waveform picks the oscillator shape ('sine', 'saw', 'square', 'triangle', 'noise'), and filterModel selects the filter character ('svf', 'moog-ladder', 'diode-ladder', 'sallen-key') together with cutoffHz and resonanceQ. Rather than build a patch by hand, you can list the ready-made catalog with synthPresetNames() and load one with synthPresetPatch(name). The built-in presets are arranged over these same engines, so every preset is really one of the families above with its parameters filled in for you. Deep mode-specific data (FM operator stacks, modal mode tables, drawbar registrations, kit pieces, piano strings, pipe ranks, bowed-string friction, reed/brass bores, and flute jet geometry) lives inside the named presets, while the patch exposes the shared controls every engine has in common.

Related: Built-in Synthesizer (NativeSynth), Envelopes and Modulation, Audio Basics, SoundFont and Sampled Instruments