[PD] dinosaurs: fibonnaci and taking cues from analog processes

Damian Stewart damian at frey.co.nz
Sun Sep 14 13:44:09 CEST 2008

hey list,

back when i started using pd, some years ago, i can remember struggling to
find anything made using it that sounded _good_. it seemed to be great for
making 8bit sounds and tinny FM synthesis; but not so good for the big
lushness one might expect a DSP synthesis thing to be capable of.

so.. over the last year i've been developing a bunch of techniques for
making things sound 'rich' in the way that analog gear can sound. the
techniques are based on ideas of inexactness and shifting over time,
recognizing that in an analog system concert A will never be exactly 440Hz,
and it will shift over time as the conditions change, disrupting our
brain's pattern-recognition systems and leading to a more rewarding sonic

the thing i'm most proud of right now is [d-fbdelay~], which is a stereo
feedback delay with built in highpass and lowpass filters and a
tape-flutter emulation effect. the tape-flutter is responsible for much of
the richness of the synth sounds, i think. it works by smoothly changing
the delay time of the delay channels slightly - by 1% or 2% - over time, to
simulate an every so slightly worn out tape motor. it also effects the
filter parameters. (for a nice demo grab the lowpass filter slider and whip
it up and down quickly - it should make a click that disappears
beautifully off into the ether.)

the other nice thing is [d-modes] which outputs MIDI notes for incoming
scale degrees based on a current tonal mode (eg ionian, dorian, phrygian,
lydian..), and includes a small amount of random detuning to further break
up the randomness. scale degrees are being triggered by a random function
with a fibonnaci distribution so that the tonic and dominant are triggered
more often.

then there's the [d-biquadcalc-*] objects, which rebuild ggee's biquad
filter objects in pure pd. these are a work in progress.

and [d-reverb2~] just wraps [rev3~] from the help patches.


attached you'll find dinosaurs.tgz, which contains _dinosaurs.pd and a
bunch of support files extracted from my own dlib (which, yes, i still need
to get around to releasing). it is pure-pd and will definitely work with 
any Pd >= 0.40.3, and perhaps earlier. it might throw some errors about 
mrpeach objects but don't worry about that, i'm not using them yet.

at the moment the only real problem is that the biquad filter
clicks sometimes when you change the sliders. i don't think there's a way
around this, unfortunately. i might have to do a new external version of
[biquad~] that internally ramps the values to avoid this.

let me know if you like it.

myself, i could listen to it for hours. it's very late, and i should be in
bed, et cetera; but i think this might be the way to make the phantom music
i hear sometimes in fans and ducts and air conditioning systems in empty
offices and industrial spaces; the sounds of pieces of machinery slowly
wearing themselves down to nothing, the sound of dead dinosaurs burning,
ruining our winters. and what do you know, it's just the fibonacci sequence...

damian stewart | skype: damiansnz | damian at frey.co.nz
frey | live art with machines | http://www.frey.co.nz

-------------- next part --------------
A non-text attachment was scrubbed...
Name: dinosaurs.tgz
Type: application/x-gzip
Size: 26814 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20080914/99bce27f/attachment.bin>

More information about the Pd-list mailing list