This is a project demonstrating a basic probabilistic drum machine type of application, using blue and Pmask. You can change the tempo, time signature and quantization value in the Pysetup object. Some of the interesting features include :
- Looping of values for various pfields need not coincide with the loop values of the note start times. This allows loops with polyrhythmic controls for the pfields.
- Presence or absence of a particular drumshot is simply controlled by decreasing the amplitude to zero to turn it off. This is how the "probabilistic snare" is implemented in the "Snareish" Python SoundObject, along with the "random" argument in the Pmask List command. Ok, it does not sound much like a snare, but it demonstrates the idea. :)
- As I was discussing with edexter, I would like to improve on this composition method. Although use of the quant variable helps simplify things, a rhythmic notation like dseq, or even better, a gui rhythm creator/editor would certainly make the process a lot more user-friendly.
This idea grew out of the way I created FMILY, a recent piece. Though I am emulating a drum machine here, the same method can be applied to any normal Csound instrument. You can download the .blue file from here :
> Although this post may be of interest as examples of how to use pmask for looping in blue, I have since starting developing a rhythm programming system (RPS) in Python which is much better than the methods used in this project. You can check out my more recent blog post 'Nearly Normal - WIP' for an example of a song done using the new RPS.