I used to be very skeptical of generative music until I came across Ólafur Arnalds. He uses an amazing setup where two "ghost" pianos play rhythmic patterns based on what he's playing on his main piano.
In 2020, Spitfire Audio collaborated with Ólafur to release a Kontakt piano library called "Stratus", which was modled after these "bleep bloop" pianos. Stratus is a cool library, but it is not too affordable, which had me build my own generative piano rack using Ableton Live. Mine is heavily inspired by Stratus demos.
The piano rack is actually two pianos. One for the left channel and one for the right channel; heavily panned. The same MIDI input goes to both pianos, but the two channels are set up slightly differently so that we get a stereo effect. Rather than explaining everything from scratch, I'll walk you through the rack. Let's start with the pianos on the right and make our way to the macros on the left.
The Piano Plugins
This is one of the two pianos. It's panned heavily (45L) and contains two layers
- The actual piano - I have used Ableton's Grand Piano here (the one from the live pack, not the default one). In the demo above, it's Spitfire Originals Felt Piano. You can use any piano, but one with a more dynamic layers and a softer velocity curve would work best.
- Piano noise - The noise you here in the demo is from NI Una Corda (piano muted, only noise). It's on a separate channel so that we have more control.
This is where all the action happens. Each channel has four different chains. (ABCD) and each of them has four chains themselves (1234 - blue). The ABCD knobs on the left determine which number is triggered for the given chain.
The actual MIDI effects are inside these blue chains. Each of them contains a different combination of arpeggiators, randomizers, delays etc. Now when we play a note, one of the ABCD chains is triggered and plays the selected pattern.
Randomizing the Pattern
So far this is a normal MIDI effect rack. The magic of Ólafur's pianos is that they play different patterns for each successive note. We can achieve this is Ableton Live using the "Expression Control" MIDI device.
It has an option called "incremental" which maps to the order of the notes played. I go into more detail about this kind of "polyphonic arpeggiation" in the post linked below.
Putting it all Together
Finally, you need to make two copies of these for the left and right channels and assign some macros for easy tweaking. Here's what the main panel looks like. The red and white ABCD knobs determine which pattern is selected for each channel. Blue knobs control velocity and note length. Green knobs are for panning and noise.