Monday, 2 December 2019

Free random velocity repeated notes without using MaxForLive!

In the run up to Christmas, I have been known to release something seasonal, and this has usually been in MaxForLive... This year, in a break from that tradition, I'm releasing something that any Ableton Live user can use! Now I have done non-MaxForLive things before (the Quick Arranger 01 Rack was popular and is still downloadable), so until I gather them together and do a 'recap summary' like I did ages ago for my audio effects, then they will remain in that special 'He doesn't do these very often...' bubble universe reserved for such rarities.

I've allowed myself to break my naming rules, since this is NOT a MaxForLive device, and so I proudly present:

Random Velocity Repeater (RVR) - a MIDI Effect rack for Ableton Live

The left-hand 'control panel' part of the RVR rack...

The Random Velocity Repeater Rack for Ableton Live is built from a MIDI Rack and two standard 'factory' MIDI effects, and so should work in any of the intro/standard/suite variants of Ableton Live 10 (I haven't tested it in Live 9...). It has four channels (red, yellow, green, and blue), each of which processes a single specific MIDI note number. It uses the 'Velocity' MIDI Effect to produce random MIDI Velocities for notes, and the 'Apreggiator' MIDI Effect to repeat notes. Any note events that are processed will have their MIDI velocity values changed, maybe even to zero (and thus turning the MIDI message into a Note Off equivalent) - this is because of two vitally important considerations:

1. My rule of thumb has long been: never repeat a note with the same length, velocity...
2. Random velocities sound cool on repeated notes!
3. Sometimes missing notes are good too! (As well as the third point in a list of two!)

To save you the effort of producing your own RVR Rack, it will be available to download from the Interweb. It will not be available from MaxForLive.com, much as I wish it was possible - and I'm not going to make a MaxForLive version - one of my other rules is that I don't normally make MaxForLive devices that are relatively straight-forward to produce using keyboard shortcuts or standard devices in Racks, unless there's a reasonably good excuse for doing it: simpler UI, less mouse clicks and various other justifications are all acceptable.

As always, in this blog post I'm going to try to provide some basic background information of how my software works. You can now skip to the 'Using it' and then the 'Download' sections if you don't want to grow your own version!

There is also now a YouTube video, which contains several audio examples.

Making it

If you haven't ventured into making Audio (Effects), Instrument, or MIDI Racks, then you may need to read the Ableton Manual first before proceeding, because not everything is obvious. The first thing to do is to create the 'splitter' that extracts out the four notes that will be processed using four separate channels, and a fifth 'Thru' channel that does nothing. To create the first processing channel you drag the 'Arpeggiator' MIDI Effect from the 'MIDI Effects' category in the Browser on the left hand side of Ableton's screen into the gap on the right after the bit that says 'Drag MIDI Effects Here'. (I said it was best to read the manual!) Then drag the 'Velocity' MIDI Effect to the right of it. Then go to the 'Key' view and set the upper and lower limits to a single note by dragging the left and right sides of the green bar left or right as appropriate. Then name the channel - I called it 'Note 1' because it is the first note processing channel. Then 'Duplicate' it three times, using the pop-up menu, and rename them to Note 2, Note 3, and Note 4. Finally, drag and drop the 'Pitch' MIDI Effect, and name it 'Thru' - making sure that for this fifth 'Thru' channel you set the key range to everything - drag the ends of the bar all the way to the left and right so the bar is right across the whole MIDI note number range.

The left hand 'Macro' control panel, plus the 'Drop MIDI Effects Here' middle bit, and the start of the right-hand 'Key' mapping panel...
The four duplicated copies of the Arpeggiator and Velocity channels, which are called Note 1-4, will all be mapped to the same note number, so you need to change them to four different notes (and this is a good time to think about a good colour scheme - mine is a bit rainbow-like...

What the key mapping panel should look approximately like for typical drum note numbers...
The graphics in the key mapping panel are quite small, so here's a close-up of the important bit where the four channels are mapped to four drum notes (shown as red on the keyboard):

When MIDI notes are received by the MIDI Effect rack, the keyboard highlights the appropriate keys on the keyboard graphic in red. Here, three notes (36, 37 and 42) are highlighted, and 38 is not. The 'bar for the Note 1-4 channels should only be 1 note wide, as shown here.
All you need to do is set the narrow bars so that they are underneath the note numbers which correspond to the drum sounds that you want to process. I set the four channels to MIDI note numbers in this way:

42 Closed Hi-Hat
38 Snare
37 Rim shot
36 Kick drum


The velocities of the drums in this pattern clip are not very imaginative! (But remember that they will be randomised...)

The settings of the Arpeggiator and Velocity MIDI Effects are shown here:


The Arpeggiator MIDI Effect is set so that itjust repeats the incoming note several times at a particular rate. The number of repeats and how quickly they repeat can both be set. You can see two small green dots on each of the rotary controls that indicates that I have already mapped these rotary controls to the Macro Controls in the left-hand control panel. To do this, you need to go into 'Map' mode by pressing the 'Map' button (various bits of the UI will go green-tinged at this point) and selecting the appropriate Macro rotary control and the control that you want to map to it. Full details are in the manual! You need to do this mapping process twice for each of the channels: once for the 'Repeats' control, and once for the 'Rate' control, making 8 mappings in total.

The Velocity MIDI Effect does quite a lot of processing of the incoming MIDI. The 'Random' rotary control is set to maximum (64) and the 'Out Hi' rotary control is set to its middle position (63) so that the output velocities will hit the maximum of 127 and all the input velocities will be scaled so that they contribute half their value to the output. So half of the output velocity will be the input, whilst the other half will be random. The 'Out Low' rotary control is set to 0 so that it can produce Note Off messages - you will need to click on the number below the rotary control to change it from the default value of 1. Finally, the 'Lowest' number box can be changed to 0 if you wish. This changes the probabiliity of the output notes slightly - as you can see in the screenshots, I didn't do this, but if you wish to make your own custom version... You could also customise the 'Comp' compression setting as well if you want to compress or expand the dynamic range of the MIDI velocities.

For the 'Thru' channel, you don't need to do anything, and the Thru channel will do that as well!

Using it


Here's the MIDI Effect Rack expanded out to show everything, then the Drum Instrument that makes the drum sounds. In normal use, you would probably only have the left hand 'Control Panel' section of the MIDI Effect rack visible - so just the Macro Controls would be visible:


After the Drum Instrument, you can add any Audio Effects that you want. I used a Reverb Effect. But before the Reverb I added a Limiter, because lots of repeated notes played quickly can be louder than a single instance of the note!

Here's a Limiter Effect before the Reverb
For each note number channel, you need to set a Clip Envelope and map that to the appropriate Macro Control in the left-hand control panel. If you haven't done this before, then you should read the Ableton Live manual because I'm not going to give full and complete details of every mouse-click... 

For Note 1, the Kick drum, the repeats are mapped to a clip envelope that rises from 1 to 8...

This is what the clip envelope looks like... The clip envelope starts at 1 on the left, and rises to 8 on the right hand side.
This means that at the start of the bar, the first Kick drum will be repeated once, the second kick will be repeated twice, the third 4 times and the fourth 6 times. The rate at which the repeats happen is set by the 'Synced Rate' rotary Macro control, which is set to 1/128th note. This is very fast repetition, and turns the Kick drum sounds to  sound more like a pitched note. ( - this is a form of sound synthesis called FOF, and you might be interested in looking up what it means and how it works...)

A slightly more conventional use would be to have a slower repeat rate, and this gives drum sounds where you can actually hear the individual repeats! Here's an example using a Rim Shot drum sound:

The Rim Shot drum sound used with Repeats plus variable Rate - it sounds quite a lot like a Guiro at times...
The clip envelope selection doesn't number the 'Repeat' or 'Rate' parameters, so you have to go by the position: top is Red (1), then Yellow (2), then Green (3), then Blue (4).  This clip envelope is for the Rate at which the notes are repeated.
The Rate starts out slow, speeds up in the middle of the bar, and then slows down again. Unfortunately, I didn't invert the Rate mapping, so faster speeds of repeat are at the bottom, and slower are as you move upwards. You could make your home-grown version do it correctly, of course!

Tints and Hips

Also known as Hints and Tips, but it probably got your attention!

SPARING Ok, so there are four channels to play with, and they are colour-coded in bright colours - this does not mean that you need to use all four channels every time! Sometimes just a single note in a single bar is all you need, or a single note repeated for every chorus. And yes, there are some genres of music where repeating it several times every bar is currently fashionable. But all four channels, all the time, is probably over-kill and may make your music sound ever-so-slightly cliched. 

SUBTLE Clip envelopes can wazz parameters from min to max very quickly, and then wang them back again just as fast. This does not mean that huge variations in the number of repeats, or the rate of those repeats, will sound better - sometimes less is more. Having said that, completely 'way-over-the-top' rate and repeat settings with a Rim Shot sound can occasionally sound just like a Guiro! 

CONFIDENCE Once you have tweaked the Repeats and adjusted the descent of the Rate control so that the Kick drum sounds like an 'FOF' cross between a drum and a monosynth, then you might be tempted to try and hide it deep in the mix. Based on what I hear these days from 'popular beat combos', then you may as well just have the confidence to put your carefully honed special sound effect loud, front and centre. 

CONFLICT When two or more tips contradict each other, as in SPARING, SUBTLE and CONFIDENCE, then just do whatever you want. If you have the Spinal Tap extension fitted to your DAW, then simply turn up all the controls to 11.  

REPETITION I mentioned it earlier, and it bears repeating: Fast repetitions of the same drum sound (particularly if your drum sounds are polyphonic) can be louder than a single instance of the same sound. A Limiter might be useful to keep things under control...

YouTube video!

I have struggled putting videos into blog pages successfully, so I'm going to turn all of this blog post into a YouTube video, so that you will be able to see these happening in a full audio-visual experience!

Getting the Random Velocity Repeater Rack

You can get the Random Velocity Repeater Rack here:

       https://drive.google.com/file/d/1H6U6k2FVQy_n5gekCm5prVwsp488done/view?usp=sharing

You just need to drop the .adg file onto Live's screen and it should appear in the MIDI Effects folder.

Modular Equivalents

In terms of basic modular equivalents, then the Random Velocity Repeater Rack would probably require four Random Noise Generators plus a quad MIDI Utility module to do the velocity multiplying, plus 4 LFOs to do the repeats, and a final quad MIDI Utility to create the repeated notes, giving a total of about 10 ME (without all the stored memories, of course).

If you find my writing helpful, informative or entertaining, then please consider visiting this link: