Last updated on 01/03/2010
Pure-data (or "pd") is a crazy amazing environment for signal processing
I've been using it for a while now and can't seem to recommend it enough.
If this environment is new to you, you may want to start
My page here serves only as a quick-and-dirty means for me to share some
of the abstraction patches I've put together. I don't claim uniqueness or usefulness
in these patches, and the following are only posted here in the remote
chance that somebody may [somewhere, sometime] find them helpful.
Overall, these are just patches that I found useful. If you like anything
or find an obvious bug or improvement, please feel free to
drop me a line.
sample mp3 (2.5MB)
A wavetable synth in which the wavetable is semirandomly altered in realtime to create
a number of interesting textures.
Includes a graph-on-parent controller version and NRPN midi support.
Contains caradisio~.pd, caradisio2~.pd, and caradisio~-help.pd.
Requires additional abstractions, which can be found below.
A set of abstractions for generating dtmf (dual tone multi frequency) tones, also known as
touch tones. Package includes a dtmf generator and dtmf dialer and help files.
- Infinity Foot Pedal - An external for the IN-USB-1 USB footpedal by VEC Electronics Corporation.
Generate a series of bangs at a given interval.
Outputs a count of the number of bangs it has seen, until reset.
A looping counter [0..n) that increments when banged. Can drive a sequencer.
Reads (inputs) 14-bit MIDI messages in NRPN format.
Sends (outputs) 14-bit MIDI messages in NRPN format.
Keeps a pd UI control synchronized with a MIDI control channel
Displays time duration as HH:MM:SS as a GOP.
Generates a 1 and 0 for a filtered/held keypress.
Keeps a pd UI control synchronized with a NRPN controller channel
Square wave oscillator, made by amplifying and then clipping a sine (osc~) wave.
tri~.pd - Nice tight triangle wave, based on phasor~.
ptrain~.pd - Pulse train. Probably very similar to pwm~ (below).
pwm~.pd - Pulse width modulation on a square wave. Probably similar to ptrain~ (above).
pwm2~.pd - (and pwm2~-help.pd) Pulse width modulation of a square wave, this time with audio-rate controls.
Variable, dynamic feedback delay line. Inputs include feedback amount and delay time.
Splits and pans a mono signal into stereo, based on a control input.
Randomized sequencer. You can specify the number of steps, base, and range.
Simple midi controller. Specify the midi "item" (man, my midi terminology
is lacking) and a range, and you'll get a numeric output based on the
midi input. Useful with an external midi controller.
mout~.pd - Simple mixed output to dac~ with graph on parent
volume control, level display, VU meter. The first GOP patch that ever worked right.
Does the ratio math to convert a number from a source range into a target range.
Simple record-to-wav (start/stop/timer) GOP abstraction.
The following are all based on underlying
LADSPA plugins (hence the "l_" prefix).
LADSPA is a kind of VST thing for Linux, and you will likely need additional
software for these to work properly. For the most part, these
should be self-explanatory.
I think this is a rockin-fun idea for a pd shirt: