[PD] A growing idea

chun lee leechun at leechun.freeserve.co.uk
Fri Nov 19 13:18:47 CET 2004

>>Wouh, and another posting.
>>Hmmm, I've planned to do a kind of patch which would help me creating some
>>rythmic patterns.
>>The core : a sample in a buffer (for instance a drum).
>>The parameters : tempo and a "groove template" say Random1
>>If I press a key on my keyboard, the event is first transmitted to a select
>>object which outputs a bang
>>related to the Random1 "groove template". This triggers a subpatch (a random
>>sequence that duplicates the bang
>>at different times) so that the sample is played at different times.
>>In the mean time, some functions will change continually the behaviour of an
>>FX rack (for instance lp filters etc etc) to transform what is sent out by my
>>Using it I could have some interesting rythmic patterns.
>>Has anyone already tried to make this kind of thing work ? What issues may I
>>face to ?
>>And last thing : do you personally have some other ideas to make astounding
>>rythmic patterns ?
>>No no, that's not benchmarking, just trying to know what other (fully
>>functional) brains have already think of.
>>it coulp open other perspectives...
>>Cheers !
>I think, what you describe is the step sequencer, which has been
>implemented in various forms of hard- and software. In Pd, the good
>thing is, that "everything is a float", so if you write one
>stepsequencer originally intended to sequence notes, you can sequence
>filter settings as well as you can sequence other sequencers or random
>note ranges etc. 
>I created several rather generic step sequencers as part of my
>RRADical abstraction collection, which grew out of my sseq-collection.
>Some issues I faced: You will want to save state like rhythmic
>patterns etc. Everone uses table objects for this first (there is a
>nice example in Miller's docs), and this it's a good exercise to do
>this as well as to use textfile and qlist. However IMO both are not
>flexible enough. "pool" is a popular external as alternative, as are
>coll and msgfile, but PDContainers rul3z m0st for (step) sequencing. I
>need to find a bridge between both.
>Second: You might find yourself in the need to do a lot of connections
>between [select], [f], [route], [tgl] and similar objects. If you do,
>learn Pd's internal message syntax.
> Frank Barknecht

Hi there:

I have been experimenting with making rhythmic patterns in Pd for a little
while now. however, my approach is a little different.

Instead of building something along the lines of a step sequencer, I tend to
use very simple probabilities to generate the rhythmic pattern. For example,
I will have a array of n elements contains random values between say 1 to
100. I than step through this array at say 16 elements at the time and loop
it. After this, I can than do a simple probability by setting a comparison
variable which effectively says: play a drum sound if the array value is
larger than than the threshold. Making sense?

I found this method quite effective. Once the right set of probability value
is found for the probability comparison, I don't need to worry about making
rhythmic patterns anymore, so I can focus on something else in the
performance. And since elements are write into an array, it can be saved
with the patch. And by regenerating the array, you can mutate the rhythmic
patterns. Also, by changing the values for comparisons, you can adjust how
busy or spaced your rhythmic patterns are very quickly.

If you are interested, feel free to take a look at my "error" patch at:


Also, RRADical is very useful too. I have been making a RRADicaled automated
drum machine using the drum sounds I put up a while ago. I can send you this
patch to look at too. I think its better than error. I think I will release
it here soon. 




More information about the Pd-list mailing list