Markov Chain Ambient in Bitwig
Tutorial | Jun 19, 2024
In this video, I introduced my Markov Chains preset, which is a melody generator based on probabilities. I explained how it works and how I coded it using information from the Hook Theory website. I demonstrated how to create an ambient drone sound using the preset and additional modulations and effects.
You can watch the Video on Youtube - support me on Patreon - Download Markov
I recently shared how to use my updated Markov Chains preset. This preset is a melody generator based on probabilities, starting with a root note (e.g., D#3 in D# minor scale) and moving through notes using probability sliders. The concept is inspired by Hook Theory’s chord progression graphs.
Key Points: #
- Melody Generation: Uses probabilities to move from one note to the next, starting from a root note.
- Scale Flexibility: Can be set to any scale, not just D# minor.
- Probability Sliders: Control the likelihood of transitioning to specific notes.
- Trigger Modifications: Adjusts trigger length for sustained notes.
- Note Transformation: Transforms notes to different octaves and intervals (e.g., fourths, fifths).
- Voice Stacking: Creates multiple versions of the patch with different pitches and volumes.
- Modulation: Uses LFOs to add pitch wobble and volume variation.
- Reverb and Effects: Adds reverb, chorus, and delay for a fuller sound.
- Harmonic Adjustments: Can remove pitch quantizer for eerie, dissonant sounds.
- VST Integration: Compatible with various VSTs for different sounds.
- Availability: Preset available for download and detailed in the video description.
This setup is useful for generating melodies and creating rich, ambient soundscapes.
Questions & Answers #
Maybe you dont watch the video, here are some important takeaways:
How does the Markov Chains preset work in music generation? #
The Markov Chains preset is a melody generator that uses probabilities to determine the next note in a sequence. It starts with a root note and uses a probability graph to select the next note, creating a melody based on the given scale. The preset is not random, but rather based on data from songs in a database.
What modifications were made to the preset in the D# Minor version? #
In the D# Minor version, the trigger was modified to create sustained longer notes instead of short bursts. The preset was also adjusted to generate a second note, either the fourth or the fifth, and switch between them using a dice trigger. These changes added more variety and depth to the generated melodies.
How was the preset integrated into a synthesizer? #
The preset was outputted to an oscilloscope and then modified to output sustained notes instead of short bursts. It was further integrated into a synthesizer, specifically a Poly-Grid, using a sine oscillator, an amplifier, a pitch input, and a quantizer. The output was then adjusted using voice stacking and other modulators to create a dynamic and evolving sound.
How can the preset be used to create ambient drone sounds? #
The Markov Chains preset can be used to create ambient drone sounds by adjusting parameters such as pitch, volume, LFO speed, and modulation. By combining the preset with effects such as reverb, chorus, and delay, atmospheric and ethereal textures can be achieved. The lack of harmonic notes and the eerie nature of the sound make it well-suited for ambient and atmospheric compositions.
Transcription #
This is what im talking about in this video. The text is transcribed by AI, so it might not be perfect. If you find any mistakes, please let me know.
You can also click on the timestamps to jump to the right part of the video, which should be helpful.
[00:00:00] So a few years ago, I made a preset called Markov Chains or Markov Sequencer.
[00:00:08] Now if you have two versions as this is a slightly altered version of the first one called the D# Minor.
[00:00:14] I want to use this one.
[00:00:16] And in here, this is how it looks like.
[00:00:20] It's basically a melody generator.
[00:00:22] And these melodies are based on probabilities.
[00:00:26] So this works kind of this way that we always start here with the first root note.
[00:00:31] In this case, it's D#3 because this is here the scale of D#miner.
[00:00:35] You can dial in any scale you want.
[00:00:38] It doesn't need to be D#, of course.
[00:00:40] You can also dial in C major if you want to.
[00:00:43] So it starts always here with the root note D#.
[00:00:46] And then based on this graph here, we go to the next note.
[00:00:49] So these sliders here are basically probability sliders.
[00:00:53] So the probability is pretty high for the next note to be here the fourth, the fourth note or the fifth.
[00:01:02] So when we play this note, it goes probably to the fourth or the fifth here.
[00:01:08] And then it takes this probability graph to go to the next note.
[00:01:12] So the next note is probably the one or let's say three or six.
[00:01:18] And then it continues and steps from each note to the next note.
[00:01:23] So this is how it works.
[00:01:24] It's not like random.
[00:01:26] It's based on probabilities.
[00:01:28] And like I said, I took this from a website called Hook Theory here.
[00:01:34] I basically used this graph here on the left side.
[00:01:38] This is actually made for chords, but you can also use it for notes.
[00:01:42] So here we are on C, right?
[00:01:45] And then it shows you basically which note is probably the next note based on all the songs in the world
[00:01:52] or all these songs in this database.
[00:01:54] So a lot of pop songs and so on.
[00:01:57] So I took this information from here and coded it in this graph here.
[00:02:05] So it's based on that.
[00:02:06] It's not just random.
[00:02:08] It's not random sliders here.
[00:02:11] And this generates basically notes and we can now output here.
[00:02:18] Or let's use actually an oscilloscope.
[00:02:23] So this is the trigger here.
[00:02:24] I want to modify the trigger because you can see here it's just a short burst of a trigger.
[00:02:31] And I want to have sustained longer notes, right?
[00:02:35] So let's switch this trigger and I use a length.
[00:02:40] And make this trigger pretty short.
[00:02:46] And then I just reverse signal here.
[00:02:49] So now we have long sustained notes and just short bursts of zero values.
[00:02:56] And we just use this here as a trigger output.
[00:03:01] So with this, we can then maybe insert this here in a synthesizer.
[00:03:07] And you don't need to use the polymer device here.
[00:03:10] You can also use any DST.
[00:03:13] And we can use sustain here, of course, then.
[00:03:19] So we have now sustained notes with this.
[00:03:25] And it goes from one note to the other note.
[00:03:30] It kind of plays a melody.
[00:03:32] So this is a bit boring.
[00:03:33] So we want to use here another note grid.
[00:03:39] And just take this note and pass it through here to the output.
[00:03:45] But we want to switch it down maybe two octaves because I think these notes are way too high.
[00:03:52] So I transform this here two octaves lower.
[00:03:54] And then I want to generate a second note.
[00:03:57] And the second note is just seven semitones higher, which is the fifth.
[00:04:06] And then I can use your select and maybe go for five semitones, which is the fourth.
[00:04:15] And then I use a dice trigger this dice every time we play a note.
[00:04:22] And we choose basically the second note to be either the fourth or the fifth.
[00:04:29] So it switches between these two notes.
[00:04:31] So now we generate basically already some kind of chord.
[00:04:39] Yeah, we just try this.
[00:04:42] And I don't want to use here a polymer synthesizer.
[00:04:46] I want to use a Poly-Grid.
[00:04:47] And inside of the Poly-Grid, use a sine oscillator.
[00:04:50] We basically do the same thing we did with a polymer synthesizer,
[00:04:55] but we recreate it here inside of the grid.
[00:04:58] Use an out and use an amplifier so we can change the volume and maybe pitch input.
[00:05:09] And use your transpose.
[00:05:11] We can change the note and let's use a quantizer.
[00:05:18] And we already play the notes of the D sharp minor scale.
[00:05:23] So I dial in here D sharp minor scale again, because we want to modulate here this transposed note, right?
[00:05:29] And we want to make sure we land basically on a note inside of the scale.
[00:05:34] So now we play here already some some notes.
[00:05:40] Let's output this.
[00:05:42] Okay.
[00:05:51] So this is also a bit boring.
[00:05:55] So now we introduce voice stacking.
[00:05:58] So we want to create this patch three times.
[00:06:02] And we use the voice stack modulator to bring in some differences between these voice stacks.
[00:06:11] And I just change your basically transpose.
[00:06:14] So each voice stack plays the sign, but with a different pitch.
[00:06:21] And the upper notes are way too high in volume for my taste.
[00:06:26] So I use also voice stack here to bring down the volume of the upper harmonics.
[00:06:35] Alright, something like this.
[00:06:46] And we can maybe change also the, let's say the ADSR settings.
[00:06:52] The upper harmonics are way shorter and the sustain level is not that high and the release time is not that long.
[00:07:03] Something like this.
[00:07:05] Then we can introduce maybe, let's say a DICE and we trigger this DICE with the gate.
[00:07:15] So we don't need the gate input.
[00:07:16] You just can use this pre-chord.
[00:07:19] And this goes to modulator.
[00:07:21] So we want to modulate something.
[00:07:23] We want to modulate here the skew.
[00:07:25] But also in the negative range, we use here bipolar, right?
[00:07:29] So it modulates here in the negative range.
[00:07:32] But now you can see it switches basically, it jumps from one parameter to the other parameter, which is not what we want,
[00:07:39] because we want to have a nice fluid background drone.
[00:07:43] So I'm bringing in here an Attenuate where we can change basically here the attenuation of this value.
[00:07:53] And I use this here with the ADSR.
[00:07:57] So this ADSR then also brings in this DICE value slowly over time for each partial, of course, for each note.
[00:08:08] So this sounds like this.
[00:08:10] And maybe we can also change here a bit the tuning for the left and the right channel.
[00:08:24] And then we want to bring in an LFO.
[00:08:31] Because we want to change our wobble here a bit with the pitch.
[00:08:37] So use another transpose.
[00:08:40] So I try to make it basically a bit alive.
[00:08:43] So at the moment it's pretty static sound, right?
[00:08:46] So I bring in a bit of wobble pitch wobble here.
[00:08:49] I use Hertz.
[00:08:50] I don't want to tie this to the BPM.
[00:08:54] Hertz, okay.
[00:08:57] I modulate this here just this light bit.
[00:09:02] Not too much.
[00:09:06] And then I use bipolar here.
[00:09:08] Let's see how this sounds.
[00:09:10] [Music]
[00:09:25] So also here we use basically the voice stack modulator to change the LFO speed setting for each stack.
[00:09:33] So each harmonic gets its different LFO speed setting.
[00:09:41] And then we use another LFO, let's say random LFO.
[00:09:51] We do the same thing here.
[00:09:53] But this time we do it for the volume.
[00:09:58] [Music]
[00:10:17] And then here the same things.
[00:10:19] We change each stack, gets a different LFO speed.
[00:10:26] So now it sounds more like a live, in my opinion.
[00:10:34] And then we put on this, let's say some reverb.
[00:10:39] So we take your combination of reverbs, convolution reverb, maybe chorus in there.
[00:10:50] Delay plus with a nice diffusion algorithm here, space one.
[00:11:00] After this maybe the stock reverb.
[00:11:05] And after this delay two.
[00:11:15] Maybe we don't modulate this too much here.
[00:11:35] Something like this.
[00:11:37] And if you don't like actually that it's super harmonic, because every partial lens on the quantizer here,
[00:11:45] or lens on the scale because of the quantizer.
[00:11:50] We can just take the quantizer out.
[00:11:56] And then you get pretty eerie scary sounds.
[00:12:01] The root note is still in the scale because we play here the D sharp minor scale.
[00:12:06] But all these overtones here we basically generate with the modulator here.
[00:12:12] Kind of off.
[00:12:23] So the only sound in this patch here is the root note that is in the scale.
[00:12:28] But all the overtones are off.
[00:12:31] And if we take it as modulator and amplify this, so we bring down the initial volume, which is more or less the root note.
[00:12:39] And we amplify all the overtones, which are this harmonic.
[00:12:43] It gets more and more scary.
[00:12:50] Or they tune this here even more.
[00:13:04] So if you don't like the harmonic nature of this patch, you can just take the pitch quantizer out.
[00:13:19] That's cool.
[00:13:40] We can also, instead of using a bit big stock devices,
[00:13:47] just check here, say super massive.
[00:13:59] Maybe let's switch this here also to polyphonic mode so we have some notes that can overlap.
[00:14:09] So if you like this.
[00:14:36] And this is completely in scale so you can place something along with the VST if you want to.
[00:14:58] Let's use another super massive here.
[00:15:13] So it's perfectly in scale. You can also make some changes here to this one if you want to.
[00:15:33] Yeah, it depends on your taste.
[00:16:00] So the Markov chain sequencer here is in the description below so you can download it.
[00:16:05] It works in every version. It's pretty old preset, two years old or so.
[00:16:10] And I also put here this project on my Patreon if you want to download this.
[00:16:16] And yeah, want to give you some inspiration how to use basically this preset and how to create drone sounds or nice back drops for your ambient pieces.
[00:16:25] In my opinion it's pretty nice to play along maybe with an analog synthesizer over the piano on top or something like this.
[00:16:34] Yeah, that's how I would do it.
[00:16:38] Thanks for watching. Leave a like if you like the video. Subscribe to the channel.
[00:16:41] Thanks for watching. See you next time. Bye.