Percussion Synthesis Building Blocks

So you want to add some rhythm to a patch, but you have no idea where to start. You hop over to ModularGrid and see a bunch of interesting drum modules, but they are all out of stock, or cost a few hundred dollars. Anyway, one of the main reasons you got into synthesis was to learn and discover your own sound design techniques. Great, this guide is for you! You can almost certainly create percussive elements with the tools you already have, whether that means creating new voices from scratch or modifying non-percussive elements in a pre-existing patch. This will not be an exhaustive treatise on drum synthesis. It will not explore how to use 20 different synthesis nodes to create the perfect snare–plenty of those exist already, and are quite excellent! Instead, it will focus on providing practical building blocks which you can combine & permute in a modular fashion to build your own percussion synthesis networks. Future articles will explore generating rhythm and time in greater depth, while this one will focus on the actual synthesis chain. This is intended to be both a starting point for the new synthesist and a point of departure and catalyst to think outside the box for the more experienced synthesist. You might even considering writing each of these ideas down on index cards, shuffling, drawing 3 at random and using those techniques as your starting points! Enjoy!

Table of contents

00: First Principles
01: Exponential Envelopes
02: Using Gates & Triggers Instead of Envelopes
03: Converting Gates & Triggers to Envelopes
04: Creating Exponential Envelopes from Linear Envelopes & Tweaking Envelope Curvature
05: Using Saw & Square LFOs Instead of Envelopes & Gates
06: Accenting Envelopes, Gates & Triggers - Offsets
07: Accenting Envelopes, Gates & Triggers - Depth
08: Accenting Envelopes - Decay
09: Using Gates & Triggers to Ping Filters
10: Using Gates & Triggers to Pluck Lowpass Gates
11: Using Gates & Triggers as Transients
12: Discontinuity - Oscillator Sync & Sample Reset
13: Simplest Possible Kick Drum/Tuned Percussion Element
14: White Noise Bursts as Audio & Modulation
15: Feedback Modulation Bursts
16: Frequency Modulation Bursts
17: Amplitude & Ring Modulation Bursts
18: Other Parameters for Modulation Bursts
19: Compression, Sidechaining, and Dynamics-Controlled Effects
20: Parallel Processing
21: Granular Percussion Synthesis

00: First Principles

Challenge: You want to create a percussive sound, but don’t know how to reframe the problem to yourself.

Approach: Something happens fast, and then it’s gone. A 1, followed by a 0. Presence & absence, intensity & release, sound & silence, discontinuity.

That’s it. Really! It might seem obvious, but whenever you are facing writer’s block, it’s always helps to reframe the problem in terms of first principles which are immediately actionable. In the case of drum synthesis, that means asking yourself “how can I create an event and make it happen fast!?” If you like, you can skip the rest of this post, and just remember that one question. It alone may be enough to get your mind racing. If not, keep reading and we will take a look at a few tools to help you create your own events.

01: Exponential Envelopes

Challenge: You don’t know where to start with creating a percussive element.

Approach: Experiment with applying exponential envelopes to various parameters in your synthesizer.

Percussive sounds are usually characterized by an initial spike in pitch (frequency), loudness (amplitude), and timbral richness (spectral complexity). Exponential envelopes with a fast attack are perfect for creating these changes in a sound’s morphology due to their quick onset spike and adjustable decay. A classic kick drum synthesis technique is to apply an exponential envelope to the pitch of a sine, square, or saw oscillator processed by a VCA and filter controlled by the same envelope. However, don’t stop with just those three parameters. Try patching an exponential envelope to any parameters available in your system, especially in a patch with lots of non-percussive elements already going to add a layer of punch to what is already playing. Look for new ways to affect frequency, amplitude, and spectral content, or find entirely separate parameters to modulate!

The demo below demonstrates the relationship between an exponential envelope and a linear envelope with the same rise (attack) and fall (decay) times. The rise and fall times can be adjusted using the r-slider and f-slider, respectively. The curvature of each segment of the exponential envelope can also be adjusted using the corresponding c-slider.

Think outside the box when looking for paramaters to modulate, searching beyond just frequency, amplitude, and filter cutoffs: distortion amount, FM depth/index/amount, FM ratio, feedback amount, the amount of white noise modulating another parameter, granular density, the control input of a VCA processing a wet long reverb, the amount of ring modulation/AM applied by one oscillator to another, and so on.

Try patching the same exponential envelope to multiple destinations in totally separate processing chains for multiple voices to create a synchronized percussive hit that creates a temporary psychoacoustic merging of various elements through shared modulation. An exponential envelope might just turn any parameter into a percussive membrane! Don’t have an exponential envelope, or an exponential input? Keep reading for more ideas.

02: Using gates & triggers instead of envelopes

Challenge: You don’t have any envelopes available, or you want a more staccato, glitchy feeling to your percussive modulations.

Approach: Patch gates and triggers directly to synthesis parameters, rather than using them as messages to envelope generators.

Streams of short gates and even triggers (which are really just ultra-short gates) can be very effective at creating sharp changes and discontinuities in a sound. Think beyond pitch, amplitude, and filter cutoffs - distortion amount, FM depth/index/amount, FM ratio, feedback amount, the amount of white noise modulating another parameter, granular density, the control input of a VCA processing a wet long reverb, the amount of ring modulation/am applied by one oscillator to another, and so on.

03: Converting Gates & Triggers to Envelopes

Challenge: You don’t have an envelope generator, or all of your envelope generators are used up already.

Approach: Use a slew limiter, lowpass filter, or lowpass gate to warp your triggers or gates into envelopes!

Try patching your trigger or gate into a slew limiter. The rise-time of the slew limiter acts as your attack time, and the fall-time of the slew limiter acts as your release time. If your slew limiter does not have a control for curvature, you can use technique 04 to create exponential envelopes from the linear slew limiter.

Try patching your trigger to a lowpass filter. In fact, lowpass filters can be thought of as slew limiters, and slew limiters can be thought of as lowpass filters! They both have the action of smoothing out sharp transitions. Sharp transitions are just high frequency events! As such, a trigger signal can be thought of as a single cycle of a square wave, with pulse-width equal to the trigger’s width. The filter eliminates the high frequency components of this wave, leaving the smoothed out lower frequencies. The cutoff frequency of the lowpass filter becomes a form of attack/release control for your atypical envelope generator.

Try patching your trigger to the control/strike input of a lowpass gate while a positive voltage is patched to the typical “audio” input. The value of the positive voltage will determine the amplitude of the envelope that is generated when a trigger arrives at the control/strike input. It will create an envelope with the typical vactrol response curve. Your lowpass gate may have more controls which allow you to adjust the shape and release time of this curve. Try sequencing the positive DC voltage going into the “audio” input of your LPG for envelope variation/accent control.

04: Creating Exponential Envelopes from Linear Envelopes & Tweaking Envelope Curvature

Challenge: You don’t have an exponential envelope generator, or want finer control over your envelope’s curvature & morphology.

Approach: Use feedback to control the linear envelope generator’s attack and release times (or a slew limiter’s rise and fall time).

If your linear envelope generator has attack and release controls, you will be able to create exponential envelopes. Exponential envelopes are characterized by having their rate of change proportional to the current level of the envelope: as the envelope output increases, the rate of change of the envelope itself also increases. This just means that you need to patch the output of your envelope directly to its attack and release time inputs! The higher the envelope is, the shorter the attack/release time will be, resulting in the envelope moving faster the closer it is to its maximum. If these timing inputs on your envelope generator create longer attack/release times with positive voltages, you will need to invert your envelope before feeding it back to its timing inputs.

For more enhanced sculptural control of your envelopes including the ability to create logarithmic envelopes and distinct curvatures for the attack and release phase, you should patch the envelope through two attenuverters before patching them into the attack and release time inputs. In this manner you can control the degree of exponential curvature for each stage separately, or push one of the phases into logarithmic curvature.

lin-to-exp.png

05: Using Saw & Square LFOs instead of Envelopes & Gates

Challenge: You don’t have any triggers, gates, or envelope generators available.

Approach: Use sawtooth and square wave LFOs to create sharp, rhythmic transitions in parameters.

The frequency of the LFOs becomes both a form of changing the morphology of your percussive events and the rhythmic timing of your events. If your LFO has a Volt/Octave input, you can create tempo accurate changes in percussive event frequency. If your square wave has a pulse width control, this becomes a control for modifying the length of percussive events. If your sawtooth wave has a sawtooth-tri-ramp control, this becomes an attack/release balance control. Try patching your sawtooth/tri/ramp LFO through a VCA with exponential response to give it more appropriate curvature before sending it on to other parameters.

06: Accenting Envelopes, Gates & Triggers - Offsets

Challenge: You have a rhythmic pattern of envelopes (or triggers/gates) patched to synthesis parameters creating a percussive sensation that you like, but the final sonic result feels static, even when the rhythm is changing.

Approach: Mix your envelopes (or triggers/gates) with offsets to create evolving, accented envelopes.

Use a mixer to sum your envelopes (or triggers/gates) with slow LFOs, sequenced CV, gates, or sample+hold values to shift the modulation range of the envelope up and down.

Using a sequencer allows you to specifically determine the level of accenting that occurs on every hit if the sequencer pattern length is the same as the rhythmic pattern length. If the rhythmic pattern is evolving or is of a different length as your offset sequence, the relationship of accents to hits will evolve in time. A similar result will occur using slow LFOs with lengths close but not equal to the rhythmic pattern length.

A simple secondary gate pattern can also be just as useful for creating accents which all have the same amount of accenting. You might try creating this secondary accent pattern by directly sequencing it, or combining two rhythmic patterns in your patch using logic utilities (AND, OR, XOR, NAND, etc.).

If you are using a sample+hold to generate your offset pattern, try clocking it with the same trigger source as your rhythmic pattern, or a different one! Try using LFOs as your S+H input, or noise, or anything else!

If an envelope is patched to multiple different parameters, try mixing it with a different offset source for each parameter - perhaps different LFOs, sequencer CV patterns of different lengths, or anything else in your system.

offset-accent.png

07: Accenting envelopes, Gates & Triggers - depth

Challenge: You have a rhythmic pattern of envelopes (or triggers/gates) patched to synthesis parameters creating a percussive sensation that you like, but the final sonic result feels static, even when the rhythm is changing.

Approach: Patch your envelopes (or triggers/gates) through VCAs before patching them to their target parameters. Use modulation from elsewhere in your system to adjust how open the VCA is, thus creating evolving, accented envelopes.

The VCA will control the amplitude of the envelope - and thus depth of modulation - without affecting its shape in time.

Opening up the VCA half-way sets a default envelope depth from which the modulation at the VCA control input will create deviation and accenting.

Using a sequencer allows you to specifically determine the level of depth accenting that occurs on every hit if the sequencer pattern length is the same as the rhythmic pattern length. If the rhythmic pattern is evolving or is of a different length as your depth-controlling sequence, the relationship of accents to hits will evolve in time. A similar evolving result will occur using slow LFOs with lengths close but not equal to the rhythmic pattern length.

A simple secondary gate pattern can also be just as useful for creating depth accents which all have the same amount of accenting. You might try creating this secondary accent pattern by directly sequencing the gates, or combining two rhythmic patterns in your patch using logic utilities (AND, OR, XOR, NAND, etc.).

If you are using a sample+hold to generate your depth-modulation pattern, try clocking it with the same trigger source as your rhythmic pattern, or a different one! Try using LFOs as your S+H input, or noise, or anything else!

If an envelope is patched to multiple different parameters, try modulating it with through a different VCA for each parameter - perhaps different LFOs, sequencer CV patterns of different lengths, or anything else in your system will control each VCA’s depth modulation.

depth-accent.png

08: Accenting Envelopes - Decay

Challenge: You have a rhythmic pattern of envelopes (or triggers/gates) patched to synthesis parameters creating a percussive sensation that you like, but the final sonic result feels static, even when the rhythm is changing.

Approach: Modulate envelope decay time to create percussive events with changing durations to create the feeling of an evolving groove.

See 06 + 07 for some ideas about potential modulation sources.

09: Using Gates & Triggers to Ping Filters

Challenge: You don’t have any typically sound sources available in your patch, or you just want to try a new technique for creating sound or another audiorate modulation source without using one of your typical voices.

Approach: Send triggers, gates, or envelopes to the audio inputs of resonant filters - especially bandpass filters - to “ping” them, creating a percussive burst of sound at the filter cutoff frequency.

Since a trigger can be thought of as a short impulse with energy at all frequencies, it can be thought of as a very short burst of noise. If a filter’s resonance is set to just before the point of self-oscillation, the frequency components of any sound at the cutoff will be greatly amplified. Sending in a trigger will add enough energy to create a percussive hit pitched at the cutoff frequency. You might use this as audio directly mixed in with the rest of your voices, or you might use it to modulate a synthesis parameter elsewhere in your patch (for instance sending frequency-modulating bursts to another oscillator). Modulating the cutoff frequency of the filter will add more dynamic and evolving character to this percussive hit, and can be especially effective when using this hit to modulate another parameter in the patch.

10: Using Gates & Triggers to Pluck Lowpass Gates

Challenge: You don’t have any envelopes, you want to create some percussive elements without using envelopes, or you just want to try a new percussion technique!

Approach: Send a trigger, gate (or even a snappy envelope) to the control or “strike/pluck” input of a lowpass gate. When a tonal audio source is patched to the audio input of the LPG, this will create a “bongo” like sound, however it also works great with noise of all color and any other sound source you might think of! Changing the pulse width and height of the trigger/gate will change the morphology of the percussive hit due to changing how the LPG vactrol responds to the trigger. The LPG may have additional controls which let you modulate the response of the LPG.

You might use this as audio directly mixed in with the rest of your voices, or you might use it to modulate a synthesis parameter elsewhere in your patch (for instance sending percussive frequency-modulating bursts to another oscillator).

11: Using Gates & Triggers as Transients

Challenge: You want to create pointillist glitches and pops or add a transient click to the start of a more full-bodied percussive voice.

Approach: The simplest possible percussive sound you can create is to simply patch a trigger, gate or fast envelope directly into your output mix.

The sharp discontinuity from the gate/trigger onset will act as a transient. When all you need is an extra click or pop, this might be enough on its own! Or use a mixer to combine this element with another sound to add a transient click to more full-bodied percussive element.

12: Discontinuity - Oscillator Sync & Sample Reset

Challenge: You want to add clicks to an oscillator voice or percussive cuts/jumps in a sample

Approach: Patch a rhythmic trigger or gate stream to the sync/reset input of an oscillator or sample player.

13: Simplest possible kick drum/tuned percussion element

Challenge: You want to create a kick drum, but don’t know where to start.

Approach: Patch a snappy envelope to the pitch control of a sine wave oscillator tuned to a low or subaudio frequency.

Use exponential envelopes for linear pitch inputs. Use linear or exponential envelopes for exponential inputs (like a Volt/Octave input, which will convert a linear envelope into an exponential response).

Adjust the curvature (see 04) and decay time of the envelope to change the feel of the kick drum. Change the envelope depth with an attenuverter or with modulation via a VCA (see 07).

You can try exchanging your sine wave oscillator for other waveforms to change the timbre and punchiness of the kick drum.

Try patching the pitch-swepth oscillator to a VCA and/or filter. If using both, try switching the order of the VCA and filter. Try using the same envelope for pitch, VCA and filter. Try using different envelopes.

The most classic example is to use a filter set to self-oscillation to generate the sine wave, and patching a linear envelope to the V/Octave input (which converts the linear envelope into an exponential response), or an exponential envelope to the V/8 input or linear input. An advantage of using a filter is that you can easily patch in other sound sources to the filter’s audio inputs to create a more complex percussion sound. Try using white noise, oscillators at other frequencies, samples, or anything else in your patch!

Mix this element with other percussive elements triggered simultaneously to create a more complex percussive sound.

Try using this element to modulate parameters of elements to create a more complex percussive sound.

simple-percussion.png

14: White Noise Bursts as Audio & Modulation

Challenge: Creating hats and snares, full spectrum percussive elements, or interesting modulation for other elements.

Approach: Send white noise through a VCA opened by a snappy exponential envelope. Patch the VCA output into your percussive mix or use it as a modulation source for any parameter. Playing with the release time of the envelope is especially effective for creating hat-like sounds the morph between open and closed.

noise.png

15: Feedback Modulation Bursts

Challenge: Creating complex, unexpected, harsher percussion hits using feedback.

Approach: Patch the audio output of an element through a VCA (or even a filter) opened by a snappy exponential envelope. Patch the VCA output to parameters earlier in its own synthesis chain to create percussive bursts of feedback modulation.

feedback.png

16: Frequency Modulation Bursts

Challenge: Creating spectrally rich hits, useful in many different styles of percussion.

Approach: Patch the audio output of an element (like a sine wave, or another percussion voice) through a VCA (or even a filter) opened by a snappy exponential envelope. Patch the VCA output to the frequency input of a new sound producing element to create FM bursts.

Alternatively, or additionally, patch the envelope to the frequency input of the modulating element, to create FM Ratio bursts.

fm.png

17: Amplitude and Ring Modulation Bursts

Challenge: Creating spectrally rich hits, useful in many different styles of percussion.

Approach: Patch the audio output of two elements into the control and primary inputs of a VCA, ideally a 4-quadrant multiplier. Patch the output of this input into another VCA. Use a snappy exponential envelope to open the second VCA. Additionally, patch the same envelope to a parameter (or many parameters) of one of the two input signals.

Alternatively, patch the audio output of one element through a VCA (or even a filter) opened by a snappy exponential envelope. Patch the VCA output to the control input of another VCA (ideally a 4-quadrant multiplier). Patch the audio input of another element into the primary input of the second VCA.

am.png
am-gate-ar.png

18: Other Parameters for Modulation Bursts

Challenge: Creating spectrally rich hits, useful in many different styles of percussion.

Approach: Patch your audio signal through various wave processors controlled by exponential envelopes, controlled by exponential envelope-gated audiorate modulation, or controlled by audiorate modulation with the output exponential-envelope gated.

Some possibilities include:

  • Distortion modules, or discrete VCAs with overdrive

  • Wavefolder modules

  • Frequency Shifters

  • Resonators/Physical Modeling Engines

  • Short Delays/Karplus-Strong Engines/Comb Filters

  • LPGs

  • VCFs

  • VCAs

  • V/Oct and Pitch inputs

processors.png
gated-processor.png
process-ar-gate.png

19: Compression, Sidechaining, and dynamics-Controlled Effects

Challenge: Adding some punch, compression, sidechaining, or ducking to pre-existing drum sounds.

Approach: Although compression & sidechaining is a vast and complex topic, the fundamental principles are simple: using the loudness of a sound to control parameters of itself or another sound, with the traditional target parameter being loudness again.

This requires creating a control voltage which tracks the loudness of your primary sound, and then patching it to other parameters. Fortunately, one likely “loudness” voltage exists already - the envelopes used in generating the initial percussion sound in the first place. Since one of these envelopes is likely controlling a VCA in the processing chain, it likely is already a great proxy for your loudness curve without extracting the true average loudness of the sound.

Alternatively, to extract the true average loudness curve, you might use a dedicated “envelope follower” module, which just tracks the “loudness envelope” of a sound - the louder a sound is on average, the higher the output voltage. If you don’t have one, it is easy to construct an envelope follower: patch your audio signal through a rectifier, and then into a slew limiter. Set the slew limiter to a fast rise time and a slow fall time. The rectifier will first flip all voltages to be positive, so that all peaks will always be positive (as opposed to alternating positive and then negative). The slew limiter will then output a voltage which immediately goes to any peak voltage, but takes time to fall to lower voltages. Consider an input sinewave at 200Hz with +5V peaks - the constant stream of peaks will force the slew limiter voltage to go to +5V, and whenever it attempts to fall to 0V, a new peak arrives to force it back to +5V. If the sine wave decreases in amplitude, the slew limiter will fall to the new amplitude. The length of the fall-time will determine how closely the slew-limiter tracks the original waveform - the longer the fall-time, the longer the amount of time the slew limiter looks at in calculating the average loudness for output. Faster fall times will eventually cause the slew limiter to much more closely track the actual waveform of the input audio.

Now that you have a loudness curve (either from an envelope generator, envelope follower, or rectifier+slew limiter) you can do whatever you want with it! For "sidechaining/ducking”, you will want to invert the envelope and patch it to the control input of a fully open VCA which processes the sound to be sidechained/ducked - perhaps even the original sound which generated the loudness curve! Inverting the envelope before patching it to the already open VCA means that when the controlling loudness envelope gets louder, the sidechained sound will get quieter. If the VCA does not allow you to set a “default” level independent of the inverted loudness envelope, simply mix a positive offset with the inverted loudness envelope before patching into the VCA control input. Adjusting the depth of the loudness envelope controls the depth of sidechaining (compression ratio), while playing with the slew limiter rise and fall times will control the feeling of the ducking (compression attack and fall). Adjusting the default level of the VCA is a bit like adjusting the makeup gain.

Alternatively, patch your loudness contour to any other synthesis parameter, and try shaping it with depth, offset, and inversion controls for further sculptural dynamics control!

More complex compression techniques like gates, multiband compression, and more can be achieved with comparators, bandpass filters, additional VCAs, etc!

20: Parallel Processing

Challenge: Creating a richer, more nuanced percussive sound out of an assemblage of distinct components.

Approach: Pass a single element through multiple distinct processing chains in parallel before recombining, or mix multiple distinct chains controlled by the same modulations into a single element.

Try patching a single sound to multiple different processing chains, each controlled by the envelope, or distinct envelopes and modulation sources, before mixing the results together. Try patching outputs from some of the processing chains to modulation inputs in the other parallel chains, Create cross-feedback paths, gated by VCAs opened by percussive envelopes, or slowly evolving LFOs for sounds that change over time.

Alternatively, mix multiple distinct sound elements with their own processing chains into a single gestalt by using shared control envelopes, and/or a final mix with a single processing chain.

21: Granular Percussion Synthesis

Challenge: Using granular synthesis to turn recorded (or live) sounds into richly textured percussive hits.

Approach: Use exponential envelopes to increase grain density (rate), grain pitch, and grain volume/spectrum (via VCAs & filters) while decreasing grain length.

Following the traditional principles of percussion as starting out loud and spectrally rich, with a descending pitch, decreasing amplitude, and decreasing spectral richness, a typical granular synthesis percussion would follow the following principles.

  • Use an exponential envelope to control grain density, since lots of grains means a louder sound. At the start of the envelope, lots of grains are generated, resulting in a louder sound. As the envelope decays, fewer grains are generated.

  • Use an exponential envelope to gate a random signal (white noise, or even just an audio signal) through a VCA, which then controls grain location. At the start of the envelope, grains are pulled from a diverse range of locations in the original sound source, resulting in heterogeneous grains covering wide ranges of the frequency spectrum. As the envelope decays, less randomness is applied to grain location, resulting in more uniform grains covering a more unified portion of the frequency spectrum.

  • Use an exponential envelope to control the pitch of the grains, or to process a random signal through a VCA which then controls pitch, for a typical pitch percussive pitch sweep.

  • Use an exponential envelope to control the length of grains, where the length of grains increases as the envelope decays.

  • Patch the granular synthesizer’s output through a VCA and filter, for further dynamics and spectral control via exponential envelopes.

Experiment with using different sound sources for granulation - voice, other percussion sounds, extended technique recordings of acoustic instruments, field recordings, or anything else you can get your hands on! Explore how different starting points within a single sound result in percussive hits with different feelings. Play with using a single envelope to control all parameters, or multiple envelopes.