A list of the core Pure Data objects, followed by lists of objects included in various external libraries.

 

Contents:

* Core Pure Data

* IEMLib

* Zexy

* MaxLib

* PDP

*PiDiP

* GEM


 Core Pure Data

The "reference" section of the documentation should contain a patch
demonstrating how to use each of Pd's classes.  As of version 0.29, a complete
list of "object" classes follows.  Not included in this list are messages,
atoms, graphs, etc. which aren't typed into object boxes but come
straight off the "add" menu.

---------------------------- GLUE --------------------------------
bang -    output a bang message
float -   store and recall a number
symbol -  store and recall a symbol
int -     store and recall an integer
send -    send a message to a named object
receive - catch "sent" messages
select -  test for matching numbers or symbols
route -   route messages according to first element
pack -    make compound messages
unpack -  get elements of compound messages
trigger - sequence and convert messagess
spigot -  interruptible message connection
moses -   part a numeric stream
until -   looping mechanism
print -   print out messages
makefilename - format a symbol with a variable field
change -  remove repeated numbers from a stream
swap -    swap two numbers
value -   shared numeric value
------------------------------ TIME ----------------------------------
delay -   send a message after a time delay
metro -   send a message periodically
line -    send a series of linearly stepped numbers
timer -   measure time intervals
cputime - measure CPU time
realtime -measure real time
pipe -    dynamically growable delay line for numbers
------------------------------ MATH ----------------------------------
+ - * / pow                                      arithmetic
== = > < >= <=                                  relational tests
& && | || %                                      bit twiddling
mtof ftom powtodb rmstodb dbtopow dbtorms        convert acoustical units
mod div sin cos tan atan atan2 sqrt log exp abs  higher math
random                                           lower math
max min                                          greater or lesser of 2 numbers
clip                                             force a number into a range
------------------------------ MIDI ----------------------------------
notein ctlin pgmin bendin touchin polytouchin midiin sysexin - MIDI input
noteout ctlout pgmout bendout touchout polytouchout midiout  - MIDI output
makenote -  schedule a delayed "note off" message corresponding to a note-on
stripnote - strip "note off" messages
------------------------------ TABLES----------------------------------
tabread -    read a number from a table
tabread4 -   read a number from a table, with 4 point interpolation
tabwrite -   write a number to a table
soundfiler - read and write tables to soundfiles
------------------------------ MISC ----------------------------------
loadbang -   bang on load
serial -     serial device control for NT only
netsend -    send messages over the internet
netreceive - receive them
qlist -      message sequencer
textfile -   file to message converter
openpanel -  "Open" dialog
savepanel -  "Save as" dialog
bag -        set of numbers
poly -       polyphonic voice allocation
key, keyup - numeric key values from keyboard
keyname -    symbolic key name
-------------------------- AUDIO MATH ----------------------------------
+~ -~ *~ /~ arithmetic on audio signals
max~ min~ - maximum or minimum of 2 inputs
clip~ -     constrict signal to lie between two bounds
q8_rsqrt~ - cheap reciprocal square root (beware -- 8 bits!)
q8_sqrt~ -  cheap square root (beware -- 8 bits!)
wrap~ -     wraparound (fractional part, sort of)
fft~ -      complex forward discrete Fourier transform
ifft~ -     complex inverse discrete Fourier transform
rfft~ -     real forward discrete Fourier transform
rifft~ -    real inverse discrete Fourier transform
framp~ -    output a ramp for each block
mtof~, ftom~, rmstodb~, dbtorms~, rmstopow~, powtorms~ - acoustic conversions
-------------------------- AUDIO GLUE ----------------------------------
dac~ -      audio output
adc~ -      audio input
sig~ -      convert numbers to audio signals
line~ -     generate audio ramps
vline~ -    deluxe line~
threshold~  detect signal thresholds
snapshot~ - sample a signal (convert it back to a number)
vsnapshot~  deluxe snapshot~
bang~ -     send a bang message after each DSP block
samplerate~ get the sample rate
send~ -     nonlocal signal connection with fanout
receive~ -  get signal from send~
throw~ -    add to a summing bus
catch~ -    define and read a summing bus
block~ -    specify block size and overlap
switch~ -   switch DSP computation on and off
readsf~ -   soundfile playback from disk
writesf~ -  record sound to disk
-------------------- AUDIO OSCILLATORS AND TABLES ------------------------
phasor~ -   sawtooth oscillator
cos~ -      cosine
osc~ -      cosine oscillator
tabwrite~ - write to a table
tabplay~ -  play back from a table (non-transposing)
tabread~ -  non-interpolating table read
tabread4~ - four-point interpolating table read
tabosc4~ -  wavetable oscillator
tabsend~ -  write one block continuously to a table
tabreceive~ read one block continuously from a table
-------------------- AUDIO FILTERS ------------------------
vcf~ -      voltage controlled filter
noise~ -    white noise generator
env~ -      envelope follower
hip~ -      high pass filter
lop~ -      low pass filter
bp~ -       band pass filter
biquad~ -   raw filter
samphold~ - sample and hold unit
print~ -    print out one or more "blocks"
rpole~ -    raw real-valued one-pole filter
rzero~ -    raw real-valued one-zero filter
rzero_rev~  rzero~, time-reversed
cpole~, czero~, czero_rev - corresponding complex-valued filters
-------------------- AUDIO DELAY ------------------------
delwrite~ - write to a delay line
delread~ -  read from a delay line
vd~ -       read from a delay line at a variable delay time
------------------------------ SUBWINDOWS ----------------------------------
pd -      define a subwindow
table -   array of numbers in a subwindow
inlet -   add an inlet to a pd
outlet -  add an outlet to a pd
inlet~, outlet~ - signal versions of inlet, outlet
------------------------------ DATA TEMPLATES -----------------------------
struct -     define a data structure
drawcurve, filledcurve - draw a curve
drawpolygon, filledpolygon - draw a polygon
plot -       plot an array field
drawnumber - print a numeric value
------------------------------ ACCESSING DATA ----------------------------
pointer - point to an object belonging to a template
get -     get numeric fields
set -     change numeric fields
element - get an array element
getsize - get the size of an array
setsize - change the size of an array
append -  add an element to a list
sublist - get a pointer into a list which is an element of another scalar
scalar -  draw a scalar on parent
------------------------------ OBSOLETE ----------------------------
scope~ (use tabwrite~ now)
namecanvas
template (use struct now)


IEMLIB


contents of iemlib Release 1.15 from December 2003

============================ DSP~ ===========================

------------------------- filter~ -------------------------------
FIR~         finite impuls response filter, with array-coefficients

maverage~     moving average filter, (IIR + delay)

ap1~         allpass 1.order
ap2~         allpass 2.order
bpq2~         bandpass 2.order with Q-inlet
bpw2~         bandpass 2.order with bandwidth-inlet
bsq2~         bandstop 2.order (notch) with Q-inlet
bsw2~         bandstop 2.order (notch) with bandwidth-inlet
hp1~         highpass 1.order
hp2~         highpass 2.order
lp1~         lowpass 1.order
lp2~         lowpass 2.order
rbpq2~         resonance-bandpass 2.order with Q-inlet
rbpw2~         resonance-bandpass 2.order with bandwidth-inlet

hml_shelf~     high-middle-low shelving-filter with freq- and gain-inlets
lp1_t~         lowpass 1.order with time_constant inlet
para_bp2~     parametrical bandpass 2. order with freq-, Q- and gain-inlet

hp2_butt~, hp3_butt~, hp4_butt~, hp5_butt~, hp6_butt~, hp7_butt~,
hp8_butt~, hp9_butt~, hp10_butt~
    highpass 2.3.4.5.6.7.8.9.10.order with butterworth characteristic
hp2_cheb~, hp3_cheb~, hp4_cheb~, hp5_cheb~, hp6_cheb~, hp7_cheb~,
hp8_cheb~, hp9_cheb~, hp10_cheb~
    highpass 2.3.4.5.6.7.8.9.10.order with chebyshev characteristic
hp2_bess~, hp3_bess~, hp4_bess~, hp5_bess~, hp6_bess~, hp7_bess~,
hp8_bess~, hp9_bess~, hp10_bess~
    highpass 2.3.4.5.6.7.8.9.10.order with bessel characteristic
hp2_crit~, hp3_crit~, hp4_crit~, hp5_crit~, hp6_crit~, hp7_crit~,
hp8_crit~, hp9_crit~, hp10_crit~
    highpass 2.3.4.5.6.7.8.9.10.order with critical damping
lp2_butt~, lp3_butt~, lp4_butt~, lp5_butt~, lp6_butt~, lp7_butt~,
lp8_butt~, lp9_butt~, lp10_butt~
    lowpass 2.3.4.5.6.7.8.9.10.order with butterworth characteristic
lp2_cheb~, lp3_cheb~, lp4_cheb~, lp5_cheb~, lp6_cheb~, lp7_cheb~,
lp8_cheb~, lp9_cheb~, lp10_cheb~
    lowpass 2.3.4.5.6.7.8.9.10.order with chebyshev characteristic
lp2_bess~, lp3_bess~, lp4_bess~, lp5_bess~, lp6_bess~, lp7_bess~,
lp8_bess~, lp9_bess~, lp10_bess~
    lowpass 2.3.4.5.6.7.8.9.10.order with bessel characteristic
lp2_crit~, lp3_crit~, lp4_crit~, lp5_crit~, lp6_crit~, lp7_crit~,
lp8_crit~, lp9_crit~, lp10_crit~
    lowpass 2.3.4.5.6.7.8.9.10.order with critical damping

vcf_hp2~, vcf_hp4~, vcf_hp6~, vcf_hp8~
    highpass 2.4.6.8.order with freq- and Q-signal-inlets
vcf_lp2~, vcf_lp4~, vcf_lp6~, vcf_lp8~
    lowpass 2.4.6.8.order with freq- and Q-signal-inlets
vcf_bp2~, vcf_bp4~, vcf_bp6~, vcf_bp8~
    bandpass 2.4.6.8.order with freq- and Q-signal-inlets
vcf_rbp2~, vcf_rbp4~, vcf_rbp6~, vcf_rbp8~
    resonance-bandpass 2.4.6.8.order with freq- and Q-signal-inlets

------------------------ arithmetic~ ----------------------------
addl~         signal-addition with line~
divl~         signal-divison with line~
mull~         signal-multiplication with line~
subl~         signal-subtraction with line~

------------------------- converter~ ----------------------------
prvu~         peak and rms VU-meter interface
pvu~         peak VU-meter interface
rvu~         rms VU-meter interface
unsig~         signal to float converter

------------------ t3~ - time-tagged-trigger --------------------
-- inputmessages allow a sample-accurate access to signalshape --
t3_sig~         time tagged trigger sig~
t3_line~     time tagged trigger line~

--------------------------- misc~ -------------------------------
fade~         fade-in fade-out shaper (need line~)
iem_blocksize~     blocksize of a window in samples
iem_samplerate~     samplerate of a window in Hertz
int_fract~     split signal-float to integer- and fractal-part
LFO_noise~     downsampled 2-point interpolated white noise
mp3play~     mp3 stereo player
peakenv~     peak envelope shaper
pink~         pink noise
round~         round signal-float to nearest integer
sin_phase~     output phase-difference of 2 sinewaves in samples

========================= control ==========================

------------- gui (included into millers pd) --------------------

bng         bang, display and generate a bang-message
cnv         canvas, colored background and text
hdl         horizontal dial, for multiplex usage
hradio         horizontal radiobutton, only float in/out
hsl         horizontal slider
nbx         numberbox, the second
tgl         2 state toggle
vdl         vertical dial, for multiplex usage
vradio         vertical radiobutton, only float in/out
vsl         vertical slider
vu         vu-meter, display rms- + peak-level in dB

--------------------- float operating -------------------------
1p1z         float-message-filter 1.order
db2v         db to rms
dbtofad         midi-db to fader-characteristic
fadtodb         fader-characteristic to midi-db
fadtorms     fader-characteristic to rms
rmstofad     rms to fader-characteristic
round_zero     round numbers near zero to zero
speedlim     reduce speed of a numeric stream
split3         part a numeric stream into 3 ways
split         part a numeric stream into 2 ways (like moses)
transf_fader     partial linear characteristic diagram (like table)
v2db         rms to db
wrap         wraparound

-------------------- symbol operating -------------------------
mergefilename     merge a list of symbols together
splitfilename     divide a symbol into 2 parts
stripfilename     strip n characters of a symbol
unsymbol     convert a symbol- to a anything-message

------------------- anything operating ------------------------
any         store and recall any message (like f, or symbol)
iem_append     append a message to any messages (obsolete: merge_any)
iem_prepend     prepend a message to any messages (abbr. pp or prepend)

-------------------------- init -------------------------------
default         replace initial-argument, if it is zero
dollarg         receive parent initial-arguments (abbr. $n)
dsp         control audio-engine, calculate dsp-performance (aka. dsp~)
float24         store a 24-bit accurate float-number
init         initialize a message via loadbang (abbr. ii)
once         any message pass through only the first time

------------------------- counter -----------------------------
exp_inc         exponential increment counter (bang triggered)
for++         incremental counter (triggered by internal metro)
modulo_counter     endless loop counter (bang triggered)

-------------------------- misc -------------------------------
add2_comma     add a comma-separated message to a messagebox
bpe         break point envelope controller
f2note         frequency to midi+cents+note
gate         interruptible message connection (like spigot)
iem_i_route     variation of route (abbr. iiroute)
iem_receive     catch "sent" messages (receive-name-input) (abbr. iem_r)
iem_route     improvement of route
iem_sel_any     control a message-box with multiple content
iem_send     send messages to named object (send-name-input)(ab. iem_s)
pre_inlet     output an identifier-message and then the incoming message
prepend_ascii    output an identifier-message and then the incoming message
soundfile_info     output header-info of a wav-file
toggle_mess     control a message-box with multiple content (abbr. tm)

------------------- parameter handling ------------------------
iem_pbank_csv     parameter memory manager (csv-format) (like textfile)
list2send     array of send-objects
receive2list     array of receive-objects

--------------- t3 - time-tagged-trigger  ---------------------
----------- a time-tag is prepended to each message -----------
----- so these objects allow a sample-accurate access to ------
---------- the signal-objects t3_sig~ and t3_line~ ------------
t3_bpe         time tagged trigger break point envelope
t3_delay     time tagged trigger delay
t3_metro     time tagged trigger metronom
t3_timer     time tagged trigger timer

-------------- obsolete ---------------------------------------
post_netreceive
pre_netsend

================================================================================

ZEXY



These are the objects that come with the zexy-external

============================ DSP~ ===========================

---------------------------- IO~ --------------------------------
sfplay        play back (multi-channel) soundfiles
sfrecord    record (multichannel) soundfiles

------------------------ generators~ ----------------------------
dirac~        dirac-pulse
step~        unity step
noish~        downsampled noise (hold)
noisi~        downsampled noise (interpolate)

------------------------ processing~ ----------------------------
limiter~    a limiter/compressor module
quantize~    quantizes signals
swap~        bytes swap a 16bit-signal
blockmirror~    time-reverse a signal-vector (1,2,...,64 -> 64,63,...,1)
blockswap~    swap the upper and lower half of a signal-vector
z~        samplewise delay

------------------------- analytic~ -----------------------------
sigzero~    detects whether a signal is zero throughout the vector or not
pdf~        probability density function
envrms~        like env~, but outputting rms instead of dB
avg~        arithmetic mean of 1 signal-vector
tavg~        arithmetic mean between two bangs
dfreq~        frequency detector

------------------------- sigbinops~ ----------------------------
>~, <~, ==~, &&~, ||~    logical operators
abs~        absolute value of a signal
sgn~        signum of a signal

--------------------------- misc~ -------------------------------
nop~        no-operation
pack~        convert a signal to a list of floats
unpack~        convert a list of floats to a signal
matrix~        matrix-multiply m IN-signals to n OUT-signals
multiline~    multiply a number of signals with scalars (interpolated)
multiplex~    multiplex 1-of-n inlets to 1 outlet
demultiplex~    demultiplex 1 inlet to 1-of-n outlets


========================= control ==========================

-------------------------- basic -------------------------------
nop        no-operation
repeat        repeat a message several times
lister        store lists (like "float" for floats)
repack        (re)pack atoms to packages of a given size
packel        get a specified element of a list
drip        extract the atoms of a package (opt. scheduled)
length        get the length of a list
niagara        split 1 packages into 2
glue        append a package to another (glue them together)
segregate    segregate the input to various outlets, depending on the type
any2list    convert "anythings" to "lists"
list2int    cast each float of a list to integer
atoi        ascii to integer
strcmp        compare lists as strings
list2symbol    convert a list into a single symbol
symbol2list    convert a symbol to a list

------------------------ advanced ------------------------------
tabdump        dump out a table as a list of floats
tabset        set a table with a list of floats
makesymbol    concatenate lists to formatted symbols
date        get system date
time        get system time
index        map symbols to indices
msgfile        a powerful "textfile" derivative
demultiplex    demultiplex the input to a specified outlet
lpt        write to the (parallel) port (linux only)
operating_system      get the current OS


-------------------------- maths --------------------------------
mavg        moving average filter for floats
mean        get the mean value of a list of floats
minmax        get minimum and maximum of a list of floats
sort        shell-sort a list of floats
urn        unique random numbers
prime        test whether a number is prime or not
wrap        wrap the float-input between to boundaries
.        scalar multiplication of vectors (=lists of floats)
deg2rad        convert between degree and radiant
rad2deg        convert between radiant and degree
cart2pol, pol2cart, cart2sph, sph2cart, pol2sph, sph2pol    convert between coordinate systems (cartesian, polar, shperic)

-------------------------- matrix -------------------------------
matrix        create/store/... matrices
mtx_element    set elements of a matrix
mtx_row        set rows of a matrix
mtx_col        set columns of a matrix
mtx_ones    matrix with all elements==1
mtx_zeros    matrix with all elements==0
mtx_eye        identity matrix
mtx_egg        identity matrix (from upper-right to lower-left)
mtx_diag    diagonal matrix
mtx_diegg    diagonal matrix (from upper-right to lower-left)
mtx_diag    get the diagonal of a matrix
mtx_trace    get the trace of a matrix
mtx_transpose    transpose a matrix
mtx_roll    column-shift a matrix
mtx_scroll    row-shift a matrix
mtx_pivot    pivot-transform a matrix
mtx_resize    resize a matrix (evtl. with zero-padding)
mtx_size    get the size of a matrix
mtx_inverse    get the inverse of a matrix
mtx_add, mtx_+    add 2 matrices (or an offset to 1 matrix)
mtx_sub, mtx_-  subtract 2 matrices (or an offset from 1 matrix)
mtx_mul, mtx_*    multiply 2 matrices (or a factor with 1 matrix)
mtx_.*        multiply 2 matrices element by element
mtx_./        divide 2 matrices element by element
mtx_mean    get the mean value of each column
mtx_rand    matrix with random elements
mtx_check    check the consistency of a matrix and repair
mtx_print    print a matrix to the stderr


================================================================================

MAXLIB

maxlib 1.5 Music Analysis eXtensions LIBrary
written by Olaf Matthes <olaf.matthes@gmx.de>

MUSIC/MIDI ANALYSIS
chord        chord detection
beat        beat tracking
borax        music analysis
rythm        beat detection    
score array01    score following
pitch        pitch information
gestalt        "gestalt" of music
edge        detect rising/falling edge
tilt        measure tilt of input

MATH

divmod        calculate / and %
divide        / for several inputs
minus        - for several inputs
multi        * for several inputs
plus        + for several inputs
average        average of last N values
history        average over last N seconds
match        match input to list of numbers
scale        scale input to output range
delta        calculate 1st or 2nd order diff.
wrap         wrap a number in a range [obs!]
rewrap        wrap it back and forth

ROUTING/CHECKING

split        split according to range [obs?]
nroute        r. according to Nth elem.
unroute        opposite of route
limit        limiter for floats
listfunnel    Max's funnel for lists
nchange s    change that accepts any kind of input

(REMOTE) CONTROL
dist        send to list of recieve objects
netdist        same for netreceive
remote        send to one receive object
netrec        netreceiev with extra info about sender
netserver    bidirectional communication (client/server based)
netclient


TIME

pulse        a "better" metro
speedlim    lets input through every N miliseconds
iso        play sequence of MIDI notes
ignore        ignore too fast changing
step        a line object that steps
velocity    velocity of input in digits per second
sync         extended trigger object
timebang    send a bang at given time of day
pong         bouncing ball model
temperature    amount of input changes per time

BUFFER

lifo        last in first out for floats
fifo         first in first out for floats
listfifo    first in first out for lists
arraycopy    copy from one array to another

OTHER/EXPERIMENTAL

subst        self-similar substitution
mlife        cellular automaton

RANDOM

gauss
linear
expo
beta
cauchy
poisson
bilex, arbran array01 array02

================================================================================

PDP


This is a list of all pdp objects and abstractions with a minimal description.
Take a look at the patches in the doc/ directory for more info.
(Messy doc & test patches can be found in the test/ directory.)

general purpose pdp modules:

pdp_del        a packet delay line
pdp_reg        a packet register
pdp_snap    takes a snapshot of a packet stream
pdp_trigger    similar to pd's trigger object
pdp_route    routes a packet to a specific outlet
pdp_loop    a packet loop sampler (packet array)
pdp_description    output a symbol describing the packet type
pdp_convert    convert between packet types

image inputs/outputs:

pdp_xv        displays images using the xvideo extension
pdp_glx        displays images using opengl
pdp_v4l        reads images from a video4linux device
pdp_qt        reads quicktime movies

image processors:

pdp_abs        absolute value
pdp_add        adds two images
pdp_and        bitwize and
pdp_bitdepth    set bit depth
pdp_bitmask    apply a bit mask
pdp_bq        spatial biquad filter
pdp_bqt        temporal biquad filter
pdp_cog        gaussian blob estimator
pdp_constant    fills an image with a constant
pdp_conv    horizontal/vertical seperable convolution filter
pdp_cheby    chebyshev color shaper
pdp_chrot    rotates the chroma components
pdp_flip_lr    flip left <-> right
pdp_flip_tb    flip top <-> bottom
pdp_grey    converts an image to greyscale
pdp_grey2mask    converts a greyscale image to an image mask
pdp_hthresh    hard thresholding
pdp_mul        multiplies two images
pdp_mix        crossfade between 2 images
pdp_mix2    mixes 2 images after applying a gain to each of them
pdp_noise    a noise generator
pdp_not        bitwize not
pdp_or        bitwize or
pdp_plasma    plasma generator
pdp_pointcloud    convert an image to a point cloud
pdp_positive    sign function that creates a bitmask
pdp_randmix    crossfades 2 images by taking random pixels
pdp_rotate    tiled rotate
pdp_scale    rescale an image
pdp_sign    sign function
pdp_sthresh    soft thresholding
pdp_zoom    tiled zoom
pdp_zrot    tiled zoom + rotate
pdp_zthresh    zero threshold (x<0 -> 0)
pdp_xor        bitwize xor

dsp objects

pdp_scope~    a very simple oscilloscope
pdp_scan~    phase input scanned synthesis oscillator
pdp_scanxy~    x,y coordinate input scanned synthesis oscillator


utility abstractions

pdp_pps            computes the packet rate in packets/sec

image abstractions

pdp_agc            automatic gain control (intensity maximizer)
pdp_blur        blurs an image
pdp_blur_hor        horizontal blur
pdp_blur_ver        vertical blur
pdp_contrast        contrast enhancement
pdp_dither        a dither effect
pdp_phase        applies an allpass filter to an image
pdp_phase_hor        horizontal allpass
pdp_phase_ver        vertical allpass
pdp_motion_blur        blurs motion
pdp_motion_phase    phase shifts motion
pdp_offset        add an offset to an image
pdp_alledge        an all edge detector
pdp_conv_emboss        emboss
pdp_conv_sobel_hor    horizontal sobel edge detector
pdp_conv_sobel_ver    vertical sobel edge detector
pdp_conv_sobel_edge    sum of squares of hor and ver
pdp_saturation        change colour saturation
pdp_sub            subtract 2 images
pdp_invert        inverse video
pdp_gain3        set 3 channel gains independently
pdp_gradient        converts a greyscale to colour using a colour gradient
pdp_png_to        convert a png file (on disk) to a certain packet type
pdp_tag            tag a packet (to use it with route)


matrix processors

pdp_m_mv        matrix vector multiply
pdp_m_mm        matrix matrix multiply
pdp_m_+=mm        matrix matrix multiply add
pdp_m_LU        compute LU decomposition
pdp_m_LU_inverse    compute matrix inverse from LU decomp
pdp_m_LU_solve        solve a linear system using LU decomp

matrix abstractions

pdp_m_inverse        compute matrix inverse




SEPARATE LIBRARIES:

cellular automata
(pdp_scaf)

pdp_ca            computes a cellular automaton (as a generator or a filter)
pdp_ca2image        convert a CA packet to a greyscale image (obsolete: use pdp_convert)
pdp_image2ca        convert an image to a CA packet (black and white) (obsolete: use pdp_convert)


3d drawing objects
(pdp_opengl)

3dp_windowcontext    a drawable window
3dp_draw        draw objects (cube, sphere, ...)
3dp_view        viewing transforms (rotate, translate, ...)
3dp_light        light source
3dp_push        push a matrix (modelview, texture, ...)
3dp_dlist        compile a display list
3dp_snap        copies the drawing buffer to a texture packet
3dp_mode        set the current matrix mode
3dp_toggle        set some opengl state variables


3d drawing abstractions (pdp_opengl)

3dp_mouserotate        connect to 3dp_windowcontext to rotate the scene
3dp_blend        turn on accumulative blending mode

================================================================================

PiDiP



pdp_ascii        an ASCII art renderer
pdp_canvas        a video canvas
pdp_charcoal        charcoal effect
pdp_cmap        a color mapper
pdp_colorgrid        a color picker
pdp_compose        a video compositor
pdp_capture        screen capture to video utility
pdp_ctrack        a color tracker
pdp_disintegration    disintegration effect
pdp_ffmpeg~        a video streamer towards a ffserver
pdp_form        a geometric forms adder
pdp_i/pdp_o        PD to PD streaming objects
pdp_imgloader        load an image and blend it with a video source
pdp_live~        a video stream decoder (at least from ffserver)
pdp_mgrid        a grid-based motion detector
pdp_morphology:        pdp_binary    
            pdp_erode
            pdp_dilate
            pdp_hitandmiss
            pdp_distance
     + patches:     closing, opening, skeletization, thinning, thickening
pdp_mp4live~        a quicktime stream emitter (darwin, quicktime)
pdp_mp4player~        a quicktime stream receiver (darwin, quicktime)
pdp_pen            free hand drawing object
pdp_rec~        a quicktime file recorder
            Video: jpeg, yuv2, divx, dv, yuv2
            Audio: twos, raw
pdp_shape         shape detection object
pdp_spigot        a video signal router
pdp_spotlight        a spotlight especially made for cabaret
pdp_text        a text addition object
pdp_theorin~        threaded theora/ogg files reader
pdp_theorout~        theora/ogg files recorder
pdp_transition        transition between two video sources
pdp_qt            quicktime movie reader
pdp_qt~            quicktime movie reader with audio
pdp_yqt            a quicktime movie reader with less functionnalities
pdp_qt            but with less functionnalities    
            codecs : jpeg, yuv2, divx, dv, yuv2
            no compressed headers!
pdp_aging, pdp_baltan, pdp_cycle, pdp_dice, pdp_edge,
pdp_intrusion, pdp_lens, pdp_mosaic, pdp_nervous, pdp_puzzle,
pdp_quark, pdp_radioactiv, pdp_rev, pdp_ripple, pdp_shagadelic
pdp_simura, pdp_spiral, pdp_transform, pdp_underwatch, pdp_vertigo
pdp_warhol, pdp_warp : the port of effecTV to PDP.
 


GEM


Controls
gemhead - the start of rendering chain
gemwin - the window manager
gemmouse - outputs the mouse position and buttons in the GEM window
gemkeyboard - outputs the keycode of a key pressed when you are in the GEM window (there might be different keycodes in Windows/Linux)
gemkeyname - outputs a symbolic description of a key pressed when you are in the GEM window (there might be different symbols in Windows/Linux)
gemorb - outputs the position, rotation, and buttons for a Space Orb
gemtablet - outputs the pen position, pressure, and buttons in the GEM window


Manipulators
accumrotate - accumulate a rotation
alpha - enable/disable alpha blending
ambient - set the ambient color with a vector
ambientRGB - set the ambient color with 3 discrete values
camera -
color - set the color with a vector
colorRGB - set the color with 3 discrete values
depth - enable/disable depth testing
diffuse - set the diffuse color with a vector
diffuseRGB - set the diffuse color with 3 discrete values
emission - set the emissive color with a vector
emissionRGB - set the emissive color with 3 discrete values
linear_path - generate a path from an array of points
ortho - change the view to orthogonal, with the viewport the size of the window
polygon_smooth - turn on anti-aliasing for the objects below
rotate - rotate with an angle and vector
rotateXYZ - rotate with 3 discrete values
scale - scale with a vector
scaleXYZ - scale with 3 discrete values
separator - push the OpenGL state for the rest of the chain and pop when done
shininess - set the shininess of an object
specular - set the specular color with a vector
specularRGB - set the specular color with 3 discrete values
spline_path - generate a spline from an array of knots
translate - translate with a vector
translateXYZ - translate with 3 discrete values

Geos
circle - render a circle
colorSquare - render a colored square (evtl. with color gradients)
cone - render a cone
cube - render a cube
cuboid - render a box
curve - render a Bezier curve
curve3d - render a surface
cylinder - render a cylinder
disk - render a disk
imageVert - make pixel colors to a height field map
model - render an Alias|Wavefront model
multimodel - render a series of Alias|Wavefront models, render by number
newWave - render a wave (that is evolving over time)
polygon - render a polygon
primTri - a triangle primitive
rectangle - render a rectangle
ripple - a rectangle with distorted (over time) texture-coordinates
rubber - a grid where you can move one of the grid-points
slideSquare - render a number of sliding squares
sphere - render a sphere
square - render a square
teapot - render a teapot
text2d - render 2-D text (a bitmap)
text3d - render 3-D text (polygonal)
textextruded - render an extruded 3D-text
textoutline - render outlined text (polygonal)
triangle - render a triangle

Particles
part_head - The start of a particle group
part_color - Set the range of colors for the new particles
part_damp - set the damping for particles
part_draw - Apply the actions and render the particles.  Accepts a message "draw line" or "draw point" to change the drawing style.
part_follow - Particles will follow each other like a snake
part_gravity - Have the particles accelerate in a direction
part_info - get the information (position, color, size,...) of each particle
part_killold - Remove particles past a certain age
part_killslow - Remove particles below a certain speed
part_orbitpoint - Orbit the particles around a specified point
part_render - render the remaining gem-tree as particles.
part_size - Set the size of new particles
part_source - Generate particles
part_targetcolor - Change color of the particles toward the specified color
part_targetsize - Change size of the particles toward the specified size
part_velocity - Set the velocity domain (distribution like CONE and the appropriate arguments)
part_vertex - emit a single particle

Nongeos
light - make a point light
world_light - make a light at infinity

Pixes
pix_2grey - convert rgb pixels to grey (still an RGBA image)
pix_a_2grey - convert rgb pixels to grey based on alpha channel
pix_add - add two pixes together
pix_aging - super8-like aging effect
pix_alpha - set the alpha value of a pix
pix_background - let through only pixels that differ from a static "background" image
pix_backlight - a backlight photo effect
pix_biquad - 2p2z-filter for subsequent images
pix_bitmask - apply a bitmask to a pix
pix_blob - get center of gravity
pix_buf - buffer a pix
pix_buffer - storage room for pixes (like [table] for floats)
pix_buffer_read/pix_buffer_write - put/get pixes into/from a pix_buffer
pix_chroma_key - color keying (like "blue-box")
pix_coloralpha - set the alpha-channel of a pix as a mean-value of the color-components
pix_colormatrix - recombine the RGBA-channels with matrix-operation
pix_color - set the color of a pix (leaving alpha alone)
pix_colorreduce - reduce the number of colors (statistically)
pix_composite - composite two pixes together
pix_convolve - convolve a pix with a kernal
pix_coordinate - set the texture coordinates
pix_crop - get a sub-image of a pix
pix_curve - apply color-curves onto a pix
pix_data - get pixel data information
pix_delay - frame-wise delay
pix_diff - get absolute difference of two pixes
pix_dot - rasterize a pix with big dots
pix_draw - draw a pix
pix_dump - dump the pixel-data as a long list of floats
pix_duotone - reduce the number of colors by thresholding
pix_film - use a movie file as a pix source for image-processing
pix_flip - flip the pixels of a pix
pix_gain - apply a gain to a pix
pix_grey - convert any pix into greyscale colorspace
pix_halftone - rasterize a pix like it was printed in a newspaper
pix_histo - get the histogram of a pix
pix_hsv2rgb - transform a pix from HSV-colorspace into RGB-colorspace
pix_image - load in an image file
pix_imageInPlace - load a series of image files directly into texture-buffer, display by number
pix_info - get information about the pix (like dimension, colorspace,...)
pix_invert - invert a pix
pix_kaleidoscope - as if you were looking at the pix through a kaleidoscope
pix_levels - level adjustment
pix_lumaoffset - y-offset pixels depending on their luminance
pix_mask - mask a pix based on another pix
pix_metaimage - recompose an image out of smaller versions of itself
pix_mix - mix to pixes together
pix_motionblur - motionblur an image
pix_movie - use a movie file as a pix source and load it immediately into the texture-buffer
pix_movement - set the alpha-channel with respect to the change between two frames
pix_multiply - multiply two pixes
pix_multiimage - load in a series of image files, display by number
pix_normalize - normalize a pix
pix_offset - add an offset to a pix (wrapping instead of clipping)
pix_pix2sig~ - interpret a pix as 4 (RGBA) audio-signals
pix_posterize - posterization photo effect
pix_puzzle - shuffle an image
pix_rds - generate a Random Dot Stereogram out of the image (aka: Magic Eye (tm))
pix_rectangle - generate a rectangle in a pix buffer
pix_refraction - break up an image into coloured "glass-bricks"
pix_resize - resize a pix to next power of 2
pix_rgb2hsv - transform a pix from RGB-colorspace into HSV-colorspace
pix_rgba - transform a pix of any format into RGBA
pix_roll - (sc)roll through an image (wrapping)
pix_rtx - swap time-axis and x-axis
pix_scanline - take every nth line of the original image
pix_set - set the pixel-data with a long list of floats
pix_sig2pix~ - interpret 4 audio-signals as (RGBA) image-data
pix_snap - capture the render window into a pix
pix_snap2tex - capture the render window directly as a texture
pix_subtract - subtract two pixes
pix_tIIR - time-base Infinite-Impulse-Response filter (for motion-bluring,...) with settable number of poles/zeros
pix_takealpha - take the alpha channel of one pix and put it into another pix
pix_texture - use a pix as a texture map
pix_threshold - apply a threshold to a pix
pix_video - use a video camera as a pix source
pix_write - capture the render window to disk
pix_zoom - zoom into a pix (using OpenGL)

openGL there are more than 250 objects that form a complete wrapper around the openGL set of functions (as defined in the openGL-1.2 standard).
each openGL-function is prefixed with "GEM", eg: [GEMglVertex3f] is wrapped around glVertex3f.

MarkEx
alternate - alternate between two outlets
average - average a sequence of numbers
change - only output on change
counter - count bangs
invert - non-zero numbers to zero, zero to 1
multiselect/multisel - a select object which accepts a list in the right inlet
oneshot - send a bang, then block until reset
randomF / randF - floating point random numbers
strcat - string concatentation
tripleLine - do a line with three numbers
tripleRand - random with three numbers
vector+ / v+ - add a scalar to a vector
vector- / v- - subtract a scalar from a vector
vector* / v* - multiply a vector by a scalar
vector/ / v/ - divide a vector by a scalar
vectorpack / vpack - attach a scalar to the end of a vector
rgb2hsv - convert a list of three floats from RGB to an HSV value
hsv2rgb - convert a list of three floats from HSV to an RGB value
abs~ - absolute value of a signal
reson~ - resonant filter