Hi!
This is my first post, and my first patch.
It generates a nice electronic funk/jazz/acid song out of a chord sequence.
There's a drum, a bass-line, a "rhythm-guitar", a pad, two nasty and one sweet melody.
To hear it, turn on the volume of each part and the master, and hit the green square.
It is based on a patch I made on my NordModular 10 years ago, and that I reworked recently.
You need pd-exended and Maelstorm's state saving abstractions:
http://puredata.hurleur.com/sujet-5664-state-saving-abstractions
I used obiwannabe's fairly efficient analog drums as one layer of the kick and snare, and took sumidero's keymetro as a timekeeper. These are incorporated as sub-patches so you don't need to download them separately. Here's the addresses for attribution's sake:
http://puredata.hurleur.com/sujet-1093-fairly-efficient-analog-drums
http://puredata.hurleur.com/sujet-5470-metronome-bangs-bar-main-subdivision-others
I also used a modified version Miller's phaser effect from the doc's
This is quite a CPU-heavy patch, but you could use less oversampling if your PC isn't fast enough.
I didn't really sanitize it, so all my beginner mistakes are in there, and it looks horrible.
It does sound quite cool if I may say so myself
*************************************************************************************
A simplified rundown of how it works:
*************************************************************************************
***** choosing notes*****************************************************************************************
All melody instruments randomly choose notes from a scale that gets transposed up and down according to a predefined 16 bar scheme.
The bass and L+R melody's use a markov-chain to decide which note to play, where the likelyness of each note is defined with the GUI. The octave get's switched around as well, and if the final note is too low to sound good, it is transposed up an octave.
The bass decides when to glide based on which note within the chord it is playing and to which it is going, so disregarding the octave and the chord-scheme transposes
The LR melody's decide when to glide based on the difference between the current and the next note, including actave and transposes. (that's why they have these nice long down-slides)
The "rhythm-guitar" always plays 3 notes left and 3 right, of which one on each side is randomly chosen out of 4 possible combinations, in such a way that they always form a balanced LR picture.
The pad plays a full triad on each side, but with a random octave chosen each bar. It start gliding to these notes half a bar before the chord change, and arrives at the chord change.
The lead chooses it's notes and octave fully random, but with a preference for the root .
It has two "modes": it either plays long legato notes with slow glides, in which case it stays within the current octave, or plays quicker phrases with a faster glide.
It also features a slowly in fading vibrato on long notes.
*****Making rhythms*****************************************************************************************
The drums feature a kick on every 1 and 3 and a snare on 2 and 4. Then a low-passed noise generator decides where and how loud the other kicks and snares are: positive for snares, negative for kicks, quantized to 16th notes.
The HH is a 1 bar loop, but by modulating it with the total output level, you get interesting, and somehow appropriate HH patterns.
The bass gets it's rhythm from a 16 step sequencer, whit 3 fades for each step:
The first governs the likeliness of whether to change the volume at all from the last step.
The second has the minimum volume, and the third set's the maximum of a random number that gets added to it.
Then the level of the kick gets subtracted from this, so that notes that where loud get punched in a bit by the kick, and if there where no notes at that point, they get created.
The attack and decay also get modulated.
The LR melody's base their rhythms on the difference between the current and the next note, and on the difference between the left and the right note.
Their level gets modulated by the snare level in a similar way as the bass.
The "rhythm-guitar" always plays the same sequence rhythm-wise.
The pad slowly comes in when the other instruments are silent for a moment, but also slightly random.
The lead has a random rhythm with random longer brakes. It also has a tendency to turn of on the less harmonic note of the bunch, so it stays nice and sweet sounding.
****** getting tones *****************************************************************************************
And finaly some notes on the synths used:
The tones of the bass and LR melody's follow the same "random rhythmic lfo generator" in such a way that when the bass is bright the melody's are mellow, and vice versa.
The bass, LR, guitar and lead are all FM synths with internal and external tanh distortion and some internal and external lop and hip filtering.
The lead is differently modulated left and right, for width.
The pad is band passed phasors put trough a phaser effect.
The kick has two layers, obiwannabe kick for punch and a swept down sine for weight.
The sine's decay is fast when there's bass playing, and slow when not, to maximise heaviness without being in the way of the bass.
The snare has 5 different layers:
-obiwannabe's snare
-a filtered pulse for extra crack
-some sines for weight
-some sines with noise FM, different for left and right for width
-filtered noise, again different for left and right for width
Might seems overkill, but the snare sounds a lot worse when you turn of a layer
*************************************************************************************
There's a lot more going on in this patch but since this already turned in to a full essay I'll stop here.
I'm more than willing to try and answer any questions you may have though.
Have fun with it, and I'd love to hear any modifications you come up with.
All the best,
Bart.
http://www.pdpatchrepo.info/hurleur/MagnetophonsM@gnific3ntMelody.pd