pure-data abstractions/patches
Last updated on 01/19/2007
Pure-data (or "pd") is a crazy amazing environment for signal processing
experimentation/manipulation.
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
here,
here, or
here.
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.
"Kits"
-
caradisio.tgz -
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.
Miscellaneous
-
bangs.pd -
Generate a series of bangs at a given interval.
-
bangct.pd -
Outputs a count of the number of bangs it has seen, until reset.
-
bangloop.pd -
A looping counter [0..n) that increments when banged. Can drive a sequencer.
-
nrpn_in.pd -
Reads (inputs) 14-bit MIDI messages in NRPN format.
-
nrpn_out.pd -
Sends (outputs) 14-bit MIDI messages in NRPN format.
-
ctrl_sync.pd -
Keeps a pd UI control synchronized wiht a MIDI control channel
-
hmstimer.pd -
Displays time duration as HH:MM:SS as a GOP.
-
nrpn_sync.pd -
Keeps a pd UI control synchronized with a NRPN controller channel
-
oscsq~.pd -
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).
-
dline~.pd -
Variable, dynamic feedback delay line. Inputs include feedback amount and delay time.
-
panning~.pd -
Splits and pans a mono signal into stereo, based on a control input.
-
rndseq.pd -
Randomized sequencer. You can specify the number of steps, base, and range.
-
mc.pd -
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.
-
range.pd -
Does the ratio math to convert a number from a source range into a target range.
-
wavrec~.pd -
Simple record-to-wav (start/stop/timer) GOP abstraction.
LADSPA plugins
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.