VCVRackTutorial: Quad Delay Drum Destroyer

Patch file: http://cornwarning.com/xfer/VCV/QuadDelayDrumDestroyer.vcv

Bonus patch file (melodic) http://cornwarning.com/xfer/VCV/QuadDelayMelodicDestroyer.vcv

This is a demonstration of the utility of parallel repetition of the same basic signal chain. I like to think that it mirrors the musical idea of harmonic relatedness and modulation.  Instead of affecting pitch, this patch affects time, in a rhythmically interesting way.

This patch uses controllers (buttons), and modulation sources to crossfade between a dry signal — in this case a drum machine with some built in random variations — with the same signal delayed and filtered.

TOP ROW: Drum Machine

This uses a VCV Pulse Matrix to drive an instance of a Vult Trummor 2 (for kick and snare and a Hora Treasure Hihat. Each sound uses 2 rows of the Pulse Matrix — one set to play forward, and one set to play in random order.  The two rows are then combined using a NYSTHI Logic Module’s OR function. The random triggers are fed through Audible Instruments Bernoulli Gates to thin out the hits that get dropped into the pattern. You can turn up the balance knob on the Bernoulli Gates to get more randomness in your pattern.  In the saved patch, this is tuned to my liking.

DELAY ROWS: Wonky Modulation

These are all essentially the same. Going from right to left there’s a Submarine XF-201 Crossfader, that takes the signal from the row above — in the first case, the output of the drum machine mixer, and a delayed, effected signal.

There’s an AS DelayPlus Delay followed by an XFX F-35 Filter which is the ‘wet’ side of the crossfader. The delay times are set with voltages from the AS BPM Delay/HZ Calc module to musically useful values.

Crossfader Control

This is a bit tricky, and required some fiddling to get mostly right.  There’s an RJ Modules Button you can hit which will flip between the dry and effected signals.  The manual control is combined (via an NYSTHI Logic module) with a clocked random gate from a Matthew Friedrichs March Hare module, fed through another Bernoulli Gate to thin out the gates somewhat.  The March Hare’s Synced Random source is cool because the random gate signal is triggered on beat based on the clock input.

The output of the Logic ‘OR’ gate triggers an AS ADSR Envelope, which then controls the crossfader module.   The beauty of this arrangement (with the clocked random gate) is that A) the Bernoulli Gate gives you control over how much random triggering takes place and B) the envelope smooths out the crossfade, much like slew limiter (or a Befaco Rampage with rise/fall controls).  In particular the release phase gives a nice effect where it mixes back from the delayed signal to the dry signal.

To work properly — i.e. go from dry to wet 100% when the envelope is triggered — you need to right click/ctrl click on the NYSTHI Logic module and select 0-10V operation. It defaults to 0-5V signals, which will only turn the crossfader to 50%.

PLAYING THE PATCH

Push the buttons on the left side of the patch in order to manually bring the delayed/filtered signal in.

You can add some automatic triggering of the crossfade envelope by tweaking the balance on the Bernoulli Gates. Fully clockwise (i.e. no gates pass through, complete manual control) to any amount counterclockwise.   If you go close to full clockwise, you’ll get more delayed signal than dry most of the time, and the patch begins to sound like a demented robot version of Max Roach, continuously varying the pattern.

And since the delay/filter rows are daisy chained, you can have one or more of the wet signals coming through, and each row affects the output of the row above it.  I think it gives a really really liquid-sounding mixing of ghost hits and repeats.  It takes on a life of it’s own and only rarely sounds awkward or out of time.

WHERE TO GO FROM HERE

I can think of several things you can do with the patch to get even wonkier.

  • Use different left and right delay times on the delays. I gave up on this because it gets really hectic.
  • Use another crossfader to mix the last row back into the first row’s delay along with the dry signal from the drum machine.  This can go non-linear and overloaded with only a bit of feedback, so I’d use it sparingly, and put a NYSTHI 4DCB in front of the wet signal, because this kind of feedback through a long signal chain can destroy your signal with DC offset.
  • Use effects besides filters. Filters are the most natural thing to use.  One thing that will sound jarring is crossfading between the dry signal and an effect that adds stereo separation (like a stereo Chorus or Flanger).
  • Scale the envelope output into the crossfader, so that you don’t go all the way to 100% wet signal.
  • Get rid of the drum machine, use VCV Bridge for audio input and output, and load VCVRack + this patch as a send effect in a DAW.

Have fun, and let me know if you have any questions!

VCVRackTutorial: More ambient drones, more modulation.

PATCH FILE HERE: http://cornwarning.com/xfer/VCV/GenerativeDrones.vcv

Audio Example: http://cornwarning.com/chaircrusher/ChairCrusher-GenerativeShapedSines.mp3

This is a more complicated patch than with my previous tutorials, but I think it uses some techniques that might inspire VCVRack users in other contexts.  Note that I use many paid modules, that you’ll have to have bought to load the patch intact; but there are free modules to substitute for the paid ones.  One of the reasons why I think tutorials/patch descriptions like this can be valuable is that they describe techniques that can be applied with many different modules.  I could have done this patch entirely with free modules, but it would be slightly more complicated and harder to explain.

USING RAMPAGE FOR CYCLING ENVELOPES

The core of the patch is 2 instances of the BEFACO RAMPAGE. each of which can produce two separate envelopes. It’s based on a Eurorack hardware module, and in both it’s real and virtual incarnations, it can be many things: An envelope generator, a slew limiter, a comparator, and things I don’t even know about yet, like what the BALANCE knob is for.

For my purpose in this patch, I’m using it as a cycling envelope generator.  That means that instead of firing a single time, it will repeat every time it completes a full cycle.  The Rampages control the volume of each oscillator signal (via the Audible Instruments quad VCA), but it also triggers  the sample & hold modules that determine the pitch of the oscillators.

GENERATING NOTES

This is a pretty standard arrangement for my generative patches. A ML Modules Sample&Hold signal generates a random pitch voltage, which is quantized by a VCV Scalar Module.  The pitches are then passed through Fundamental Octave modules to transpose the generated pitches.

The ‘trick’ of this patch is that the EOC (end of cycle) of each Rampage envelope triggers the Sample&Hold that generates pitch.  That means the pitch of each note only changes when that oscillator voice has zero amplitude.

The result of this arrangement – random, quantized notes triggered at the EOC – is that the pitch changes only when a voice is silent.

THAT’S (ALMOST) ALL

This patch generates ‘edgeless’ tones — the slow attack and decay of each oscillator voice means there are never jarring changes in pitch or volume.  The overall volume of the patch varies widely, as different voices reach minimum and maximum volume, overlapping in time and occasionally getting loud or quiet.

There are ways to trigger pitch edges;  turning notes on and off in the Scalar module, or choosing different octave transpostions in the Octave module with trigger pitch changes.  But the natural state of this patch is meant to generate edgelessly morphing audio.

STARTING UP

There’s some complicated business in the upper right corner of the patch that’s necessary to get the patch running in the first place. The Rampage modules are set to cycle, but they wont begin cycling without an initial trigger.  The RJRModules [LIVE] Button in the upper left hand corner will trigger each Rampage envelope to get things going.

The Button is also fed through a NYSTHI Logic module, where it’s trigger is logically or’ed with the EOC signal from the RAMPAGE envelopes.  The resulting triggers go two ways: the pitch sample&hold are triggered, and the envelopes are triggered.

SOUND THICKENERS

There’s a row of four AS DelayPlus FX that are fed by output of each voice, and then into the mixer.  They’re set to random, long delay times – hand random, meaning I tweaked them to different values – and the combination of the delay time and feedback doubles each synth voice, delayed in time.

The organic ebb and flow of the sound of this generative patch is enhanced by the delays. You can mute them to hear the patch without the delays, and it sounds basically the same, but not as wide and layered.

There are also some UnfilteredAudio Indent wave shapers, one per oscillator, that distort the sine waves using the ‘Harsh Fold’ algorithm.  ‘Harsh Fold’ isn’t actually that harsh, at least when you use moderate gain values.  When you morph between pure sign and the folded signal, it makes a complex signal with sonic characteristics combining saw wave and sine sounds.

There’s also an AS Reverb Stereo FX on effect send A of the VCV Console and the send levels of each oscillator voice are controlled by the RAMPAGE envelopes, but the send level is controlled by a different envelope than the one for the voice’s volume; in other words, a particular voice’s reverb send level follows the level of a different voice.

RANDOM MODULATION ALL OVER THE DAMN PLACE

There are 3 groups of four Matthew Friedrichs Hot Bunny modules that are set up to do random modulation on a slow time scales.  Since I like a bit more random in my random, the smooth output of each Hot Bunny in a group of 4 modulates the rate of its neighbor slightly, in a daisy chain.  It’s worthwhile to look at the outputs in a scope module to see how wonky the random signals get.

At any rate there are 3 things being modulated by the Hot Bunnies.

  • The rise time of each Rampage envelope.
  • The fall time of each Rampage envelope.
  • The gain level for each Indent waveshaper.

Since they all move relatively slowly, the modulations deepen the drifty ‘never the same river twice’ nature of the generated music, without making the results edgier.

VARYING RESULTS

There are several things you can tweak to change the output and get different sounds out of this without repatching anything.

  • Change the notes in Scalar – ctrl-click int he note boxes to turn scale steps on and off.
  • Change the scale in Scalar – click on the NOTES value and try other equal tempered scales, or load a new SCALA file for other scales.
  • Increase the modulation on the Indent waveshapers, by tweaking the AS AtNuVrTr ATTN and OFFSET modules to the right of the Indent modules
  • Tweak the modulation on the RAMPAGE modules with the quad VCA modules to their right.
  • Change the rise and fall settings for the RAMPAGE envelopes.   You can also change the range switches to modify the overall timescale of the envelopes as well, though if you use faster envelopes it can get hectic.
  • Change the scaling on the random values sent into the SCALAR to get a wider range of note values.  If you turn up the levels all the way, you’ll get some high, piercing notes, which I used the quad VCA levels to smooth out.

SCALING MODULATORS

There’s generally a scaler of some sort between each modulator signal and the parameter it’s modulating.   This is almost mandatory for modules without controls for the mod amounts.   They give you finer grained control over how the sound changes. If you download the patch at the link given above you will have  a snapshot of how I hand-tuned each of the modulation events.

FINAL THOUGHTS

There’s a whole world of generative patches you can create, but there are important questions you need to ask yourself:  How random is too random? How fast is too fast or slow? What pitch range and scale gives the result the feeling you want?

That’s the challenge of making generative music interesting. Purely random (or deterministically chaotic) sounds sound random and arbitrary.  Your goal is to come up with something that reflects human intention.  That’s true if you’re playing a traditional instrument or creating a generative instrument and letting it do its thing.