Foundations
Start with signal flow, modulation basics, and first sound design patches.
- CV vs audio
- oscillator, filter, VCA
- envelopes and LFOs
Build a complete first subtractive voice and understand how oscillator, filter, envelope, and VCA work together.
Start with signal flow, modulation basics, and first sound design patches.
Theory, structure, and practical context are all driven from content files.
Concrete repository anchors already exist for this lesson track.
By the end of this lesson, you should understand:
oscillator -> filter -> VCA -> output model is so durableSubtractive synthesis begins with a signal that already contains harmonic content and then shapes that signal by removing, emphasizing, or controlling parts of it over time.
In modular terms, the classic beginner voice looks like this:
graph LR
OSC[Oscillator] ==> VCF[Filter] ==> VCA ==> OUT((Output))
ENV[Envelope] -.->|Level| VCA
classDef signal fill:#1A202C,stroke:#2D3748,stroke-width:2px,color:#E2E8F0;
classDef accent fill:#2C7A7B,stroke:#319795,stroke-width:2px,color:#E6FFFA;
classDef mod fill:#2A4365,stroke:#2B6CB0,stroke-width:2px,color:#EBF8FF,stroke-dasharray: 4 4;
class OSC,VCF,VCA signal;
class OUT accent;
class ENV mod;
This is one of the most important patch models in the whole project.
It teaches the difference between:
Once this patch becomes clear, many later systems stop feeling abstract.
Even when later patches become more complex, the logic of this voice usually still exists somewhere inside them.
A generative patch may contain multiple layers, modulation paths, probability tools, and routing tricks, but somewhere in the system there is still usually:
That is why this lesson matters so much. It is not just a beginner exercise. It is a durable mental model.
The base subtractive chain is:
graph LR
OSC[Oscillator] ==> VCF[Filter] ==> VCA ==> OUT((Output))
classDef signal fill:#1A202C,stroke:#2D3748,stroke-width:2px,color:#E2E8F0;
classDef accent fill:#2C7A7B,stroke:#319795,stroke-width:2px,color:#E6FFFA;
class OSC,VCF,VCA signal;
class OUT accent;
Each block answers a different question.
The oscillator creates the raw material.
For this lesson, choose a waveform with enough harmonic content to make filtering obvious:
A pure sine wave can work, but it teaches less about subtractive shaping because there is less harmonic material to remove.
The filter shapes the tone.
A low-pass filter is the clearest starting point because it lets you hear how brightness changes as you move the cutoff downward.
The filter answers:
The VCA controls level.
It does not only set volume in a static way. In a musical patch, it is usually the point where an envelope gives shape to the sound over time.
The VCA answers:
The final stage sends the signal out of the patch so it can actually be heard.
Without this stage, the patch may be logically correct but still silent.
The envelope is the control layer that turns the subtractive voice into something playable.
A minimal playable version looks like this:
graph LR
GATE[Gate/Trigger] -.-> ENV[Envelope]
ENV -.->|Level| VCA
OSC[Oscillator] ==> VCF[Filter] ==> VCA ==> OUT((Output))
classDef signal fill:#1A202C,stroke:#2D3748,stroke-width:2px,color:#E2E8F0;
classDef accent fill:#2C7A7B,stroke:#319795,stroke-width:2px,color:#E6FFFA;
classDef mod fill:#2A4365,stroke:#2B6CB0,stroke-width:2px,color:#EBF8FF,stroke-dasharray: 4 4;
class OSC,VCF,VCA signal;
class OUT accent;
class ENV,GATE mod;
Here the envelope is not audio. It is a control shape.
It tells the VCA how the sound should evolve after a note or trigger happens.
This is the moment where the previous lesson becomes practical:
Build the patch in this order:
VCA audio input.VCA output to the final audio output module.VCA level or CV input.If the patch produces a sustained drone with no articulation, check whether the VCA is being controlled correctly.
If the patch is silent, check the signal path in order and verify every stage.
When the patch is working, listen for these separate dimensions:
How does the waveform sound before the filter touches it?
How much does the filter change the apparent energy and color of the sound?
Does the envelope make the sound sharp, soft, plucky, or sustained?
Does the VCA make the sound feel controlled and intentional rather than simply “on” all the time?
This kind of listening is important. You are training yourself to hear the job of each stage.
Once the basic patch works, try this extension:
graph LR
GATE[Gate/Trigger] -.-> ENV[Envelope]
ENV -.->|Cutoff| VCF
ENV -.->|Level| VCA
OSC[Oscillator] ==> VCF[Filter] ==> VCA ==> OUT((Output))
classDef signal fill:#1A202C,stroke:#2D3748,stroke-width:2px,color:#E2E8F0;
classDef accent fill:#2C7A7B,stroke:#319795,stroke-width:2px,color:#E6FFFA;
classDef mod fill:#2A4365,stroke:#2B6CB0,stroke-width:2px,color:#EBF8FF,stroke-dasharray: 4 4;
class OSC,VCF,VCA signal;
class OUT accent;
class ENV,GATE mod;
Now one envelope shapes both:
This makes the sound feel more alive because the brightness changes together with the amplitude contour.
That is one of the classic reasons subtractive synthesis feels expressive even with a small number of modules.
Beginners often patch oscillator to filter to output and wonder why the result feels unfinished.
Without the VCA being controlled, the sound often has no clear articulation.
If you choose a very plain source, the filter may seem like it is doing almost nothing.
If you change waveform, cutoff, resonance, and envelope settings all together, it becomes hard to understand cause and effect.
The filter is important, but subtractive synthesis is really about the interaction between source, shaping, and amplitude control.
Build the patch and then create three variations:
For each version, write down:
After making the three versions, keep the same patch structure and change only one variable at a time:
This teaches an important discipline: change one dimension, then listen.
That is how you learn what each part of the voice is actually responsible for.
The next lesson should expand this voice with envelopes and LFOs as separate modulation tools.
That is where the subtractive patch stops being only functional and starts becoming expressive.
Use the linked patch entries below as concrete repository anchors for this lesson track.
Adjacent lessons in the same track keep the topic progression coherent.
The first system diagram connects the modular engine, DAW layer, and visual output layer.