Pure Data Set Up

Installing Pure Data ….. and other stuff

open a terminal and type these in one at a time, these will update software, install audacity, pure data and some midi stuff

sudo apt-get update

sudo apt-get install midisport-firmware

sudo apt-get install alsa-base alsa-utils

sudo apt-get install aconnectgui

sudo apt-get install audacity

sudo apt-get install puredata

after a while, after pressing yes a few times, everything will be downloaded. If you go to the sound and video section in the menu, you’ll see your new software listed

Untitled 7

Installing Pure Data Libraries

Pure Data’s written by a community, so no ones in charge of the all over software. if you can write externals you can get pd to do anything, lots of different people make bits of code that do lots of different things. Its like having photoshop but you can add a word processor to it.  You might need an external to do something specific, like look at the karoikie track on a midi file, or one that loads a wierd type of audio file, here with a bit of research you’ll find em. These external librarys all work in  PD, but you have to download these seperatley, and store em in a folder. Luckily this is really easy too, Pd has a search engine that looks for these libraries then downloads em and stores em in a folder. After launching Pd go to help and choose find externals.

Untitled 6

this brings up the search window. Leave the search field blank and press show all. Then simply double click on the library to install it into Pd

Untitledjjujj

alternativly you can automaticaly install libraries by typing this command in a terminal window

apt-cache search “^pd-“

you’ll get all the available external libraries (which are quite a few). The type

sudo apt-get install pd-libraryname

or this one will download a load of em. Remember tho that different libraries and updates of libraries happens all the time,so some might be unavalible or superceeded.

sudo apt-get install puredata gem puredata-utils puredata-extra puredata-import pd-3dp pd-arraysize pd-aubio pd-bassemu pd-beatpipe pd-boids pd-bsaylor pd-chaos pd-comport pd-csound pd-cxc pd-cyclone pd-earplug pd-ekext pd-ext13 pd-fftease pd-flite pd-freeverb pd-ggee pd-hcs pd-hid pd-iemambi pd-iemlib pd-iemmatrix pd-iemnet pd-jmmmp pd-libdir pd-list-abs pd-lua pd-lyonpotpourri pd-mapping pd-markex pd-maxlib pd-mjlib pd-moonlib pd-motex pd-osc pd-pan pd-pddp pd-pdogg pd-pdp pd-pdstring pd-plugin pd-pmpd pd-purepd pd-readanysf pd-sigpack pd-smlib pd-unauthorized pd-vbap pd-wiimote pd-windowing pd-zexyy pd-3dp pd-ableton-link pd-ambix pd-arraysize  pd-aubio  pd-autopreset pd-bassemu pd-beatpipe pd-boids pd-bsaylor pd-chaos pd-cmos pd-comport pd-creb pd-csound pd-cxc pd-cyclone pd-deken pd-ext13 pd-extendedview pd-fftease pd-flext-dev pd-flext-doc pd-freeverb pd-ggee pd-gil pd-hcs pd-hexloader pd-hid pd-iem pd-iemambi pd-iemguts pd-iemlib pd-iemmatrix pd-iemnet pd-iemtab pd-iemutils pd-jmmmp pd-jsusfx pd-kollabs pd-lib-builder pd-libdir pd-list-abs pd-log pd-lua pd-lyonpotpourri pd-mapping pd-markex pd-maxlib pd-mediasettings pd-mjlib pd-moonlib pd-motex pd-mrpeach pd-mrpeach-net pd-nusmuk pd-osc pd-pan pd-pddp pd-pdogg pd-pdp pd-pdstring pd-pduino pd-plugin pd-pmpd pd-pool pd-puremapping pd-purepd pd-purest-json pd-py pd-readanysf pd-rtclib pd-sigpack pd-slip pd-smlib pd-syslog pd-tclpd pd-testtools pd-unauthorized pd-upp pd-vbap pd-wiimote pd-windowing pd-xbee pd-xsample pd-zexy puredata-import puredata-utils

RJ-DJ the holy of holiest grails

RJ-DJ is a collection of Pd patches that do probably all the sound stuff you have ever wanted to do. It includes effects,midi synths, audio patches, control patches, all sorts of goodies. You need to download it and put it somewhere Pd will find it

got to the website (using the pi’s on board web browser)

https://github.com/rjdj/rjlib

click the green code button and download the zip

Untitled

this downloads a zip file to the Pi’s downloads folder

Untitled 3

ssssssss

double click and it will unzip, choose under extract to the pd folder in documents and into externals

open a finder window then just drag it in, this folder holds all the pd externals you download.

Untitled 2

now go to Browser in Pd

Untitled 5

and you will see all your new externals listed

Untitledfdgdgd

after this Pd is ready to go, using it is detailed elsewhere.

Its worth saving all the hard work you have done now by burning off the operating system on a seperate memory card

God Bless CoCo! Ceammc

the ceammc externals are really good. theres loads of great graphic interface objects, and sound objects…looads more too.It can be a bit of a pain to install on the raspberry pi, but thanks to the posts by coco its been solved.

you download two things from here

put em on yer desktop (i downloaded them from the google drive on my mac then transferred them over using VNC)– click the link and scroll down to see how.  Double click to install pd-ceammc-2020.07-0.50.1_buster_armv7l.deb

then open a terminal window and type

sudo cp /home/pi/Desktop/libtiny-process-library.so /usr/lib/pd_ceammc/extra/ceammc

we now got to tell pd where this external is, so i add a new path to pds search path

kklk

click new and navigate to

/lib/pd_ceammc/extra/ceammc

add new path

press save, restart pd and if its worked you’ll be able to open a help file

Untitledkk

list of all PD objects

this site here has the thesurus of all pd objects. If you want to find an object that does a specific task, you’ll find it here and information about which library you need.

List of Pure Data objects

Copy of http://en.flossmanuals.net/pure-data/list-of-objects/introduction, Oct-2, 2014.

Name

Library/Path

Function

GLUE

Vanilla Objects

bang

send ‘bang’ message

change

eliminate redundancy in a number stream

float

store a floating point number

int

store an integer

makefilename

format a string with a variable field

moses

part a stream of numbers

pack

combine several atoms into one message

print

print messages to the terminal window

receive

receive messages without patch cords

route

route messages according to their first element

select

compare numbers or symbols

send

send messages without patch cords

spigot

pass or block messages

swap

swap two numbers, respecting right-to-left order

symbol

store a symbol

trigger

sequence messges in right-to-left order and convert data

unpack

split a message into atoms

until

looping mechanism

value

nonlocal shared value (named variable)

Extended Objects

a2l any2list

flatspace zexy

convert “anythings” to “lists”

-dsp dsp01

jmmmp

DSP switch

any

store and recall any message (like f, or symbol)

active

cyclone

report if window is active / inactive

add2_comma

flatspace iemlib

add a comma after a message

add2_comma

iemlib

add a comma after a message

allow

flatspace maxlib

lets only “allowed” floats or symbols through

alternate

flatspace markex

alternate between two outlets

amplitude_n

la-kitchen mapping

return the amplitude covered by the last n values

any_argument float_argument symbol_argument

initiate internals

any2string string2any

flatspace iemlib

converts ASCII strings to pd messages

Append

cyclone

append a list to the incoming list

ascii->int float->ascii

hcs

convert a stream of ASCII digits to a single value

atoi

flatspace zexy

convert ASCII to integer

bang-eater

flatspace

eat N bangs in every M bangs

bangbang

cyclone

send a number of bangs in order

bfilt

cxc flatspace

modulo + select 0

bfilt2

cxc flatspace

bang filter

bondo

cyclone

synx a group of messages

bpe

flatspace iemlib

break point envelope

Bucket

cyclone

pass numbers from outlet to outlet

buddy

cyclone

sync incoming data, output when all inlets received data

button

flatspace ggee

a bang with a label

change_n

la-kitchen

returns 0 if the last n datas are the same

choice

vanilla/choice

search for a best match to an incoming list

coll

cyclone

store and edit collections of messages

compare-any

list-abs

test if two anythings are the same

count_n

la-kitchen

counts from 0 to n-1

counter

cxc

counter -> NV

counter gem-counter

cyclone flatspace markex

counts the number of bangs received

cup

ekext flatspace

counts up

cycle

cyclone

send data to individual outlets

debounce mapping

la-kitchen

blocks the value of incoming data for the further n samples after ech change

debounce_b

la-kitchen

blocks the input until a specified duration is over

decide

cyclone

output 1/0 randomly

Decode

cyclone

sent out 1/0 to a specific outlet

default

iemlib

replace initial argument, if it is zero

demultiplex demux

flatspace zexy

demultiplex the input to the specified output

deny

flatspace maxlib

blocks “denyed” floats or symbols

detox

jasch_lib

extract values, contents, attributes from xml-tag structures

disjoin join

mapping

split / joina range into two (0-1)

dist

flatspace maxlib

send data to a list of receive objects

dollarg

flatspace iemlib

receive parent initial arguments <list>, like a $n

downsample

mapping

output 1 over n data

drip

flatspace zexy

unfolds a package to a sequence

dsp dsp~

iemlib

control audio, measure dsp load

edge

flatspace maxlib

detect rising or falling edge in floats

entry

flatspace

text entry box

env env+ env-

mapping

normal / positive / megative envelope follower

exp_inc

flatspace iemlib

linear and/or exponential increment counter, bang controlled

f+

jmmmp

counter with variable increment

fifo

flatspace maxlib

first in first out buffer for floats

fifop

flatspace zexy

first in first out stack with priorities

float24

flatspace iemlib

concatenate a list of float-fragment-strings to a 23 bit accurate mantissa

for++

flatspace iemlib

incremental counter (triggered by internal metro)

forward

cyclone

send remote messages

fromsymbol tosymbol

cyclone

transform symbol to numbers or messages and vice versa

ftos

ext13 flatspace

float to symbol

funnel

cyclone

tag data based on the inlet it arrived in

gate

cyclone iemlib

send data out the specified output

gcanvas

flatspace ggee

click and drag to get pixel values

glue

flatspace zexy

glue together 2 packates (append, prepend, …)

grab

cyclone

intercept the output of another object

hid_one2twohid_one2threehid_one2four

hid

one-to-x mapping object

hysteresis

mapping

add hysteresis to input data

iem_anything

iemlib

latch for anything

iem_append

iemlib

append a message to any messages

iem_i_route

flatspace iemlib

variation of route (abbr. iiroute)

iem_prepend

iemlib

prepend a message to any messages

iem_receive iem_r iem_send iem_s

iemlib

receive object with changeable receive label

iem_route

flatspace iemlib

improvement of route

iem_sel_any

flatspace iemlib

control a message-box with multiple content

ignore

flatspace maxlib

lets information through only when it was present at input longer than N ms

index

flatspace zexy

create a symbol->int map

init

initialize a message via loadbang (abbr. ii)

iso

flatspace maxlib

queues up lists of pitches and attack points

iter

cyclone

split a list into a series of numbers

ixprint

cxc flatspace

print without identifier

k_receive

k_send

kalashnikov uzi

ext13 flatspace

send a specified number of bangs as fast as possible

knob

flatspace

last_n

la-kitchen mapping

save the n last incoming datas into a list

last-x

list-abs

make a list of the last x floats

lbang

jmmmp

loadbang which can be triggered more often

length

flatspace zexy

get the length of a list

lifo

flatspace maxlib

last in first out buffer for floats

lifop

flatspace zexy

last-in-first-out stack with priorities

line3

flatspace

line with 3rd order polynome

list-abs

list-abs

apply abs() on floats of a list

list-apply

list-abs

apply the object created by [arg1 arg2] on every list element

list-clip

list-abs

clip for lists

list-compare

list-abs

compare two lists element by element

list-delete

list-abs

delete element at a position

list-drip

list-abs

drips or serializes a list

list-drip2

list-abs

drips two lists in sync (as long as 1st list lasts)

list-dripslow

list-abs

serialize a list on demand

list-enumerate

list-abs

serialize a list and put numbers in front of each element

list-extend

list-abs

build a list from incoming lists and output stored list

list-fifo

list-abs

first in, first out

list-filter

list-abs

returns a sequence of items for which the adjusted operation is true

list-find

list-abs

find positions of a value in a list

list-idx

list-abs

get element at position idx

list-insert

list-abs

insert LIST before ELEMENT at position POS in original list

list-l2s

list-abs

concatenate a list into a single symbol

list-lastx

list-abs

make a list of the last x floats

list-len

list-abs

calculate lenght of a list

list-lifo

list-abs

last in, first out

list-makefilename

list-abs

change symbols in a list, floats pass unchanged

list-map

list-abs

swiss army knife of list operations

list-map2

list-abs

map an operation on element pairs from two lists

list-moses

list-abs

like moses for lists

list-onearg

list-abs

list with optional aegument

list-reduce

list-abs

list goes element per element through a user-defined operation

list-replace

list-abs

replace (overwrite) a list from position POS with a new list

list-rev

list-abs

reverse a list’s order

list-rot

list-abs

rotate a list

list-seek

list-abs

walk through a list element by element

list-sieve

list-abs

look up ocorrence of incoming floats in a list

list-splat

list-abs

advanced list-split with negative indexes

list2int l2i

flatspace zexy

cast all floats of a list to integers

list2send

flatspace iemlib

convert some kind of lists to a sent message

list2symbol l2s symbol2list s2l

flatspace zexy

convert a list <-> symbol

lister l

flatspace zexy

stores a list

listfifo

flatspace maxlib

first in first out buffer for lists

listfunnel

flatspace maxlib

send values out as list with source index

listmoses

ekext flatspace

splits two lists according to the values contained within the 1st list

listto

mapping

separate a list into a stream of atoms

local_max local_min

mapping

give the value of every local maximum / minimum whenever there is a change in direction

lpt

flatspace zexy

write data to the parallel port

makesymbol

flatspace zexy

concatenate lists to formatted symbols

maskxor

ekext

exclusive-OR mask map

match

cyclone flatspace

look for a series of numbers and output as a list

mergefilename

flatspace iemlib

merge a list of symbols and floats to a symbol

modulo_counter

flatspace iemlib

increments counter-number from 0 to max-1 by a bang

multiplex mux

flatspace zexy

multiplex the selected inlet to the outlet

multiselect multisel

flatspace markex

select object which accepts a list in the right inlet

nchange

flatspace maxlib

a “new” [change]

next

cyclone

try to separate messages into logical parts

niagara

flatspace zexy

divide a package into 2 subpackages

nop

no operation

nroute

flatspace maxlib

rout if Nth element is matched

once

iemlib

only the first message passes through

onebang

cyclone

traffic control for bang messages

oneshot

flatspace markex

blocks after initial bang

OSCprepend

list-abs

prepends first argument to an OSC message list

packel

flatspace zexy

get the nth element of a package

parentdollarzero parent

iemlib

receives the parent symbol

pique

flatspace

find peaks in an FFT spectrum

polymap

ekext

two-dimensional polyphony-restricted map

polystat

ekext

outputs statitics about voice usage

pre_inlet

flatspace iemlib

before an incoming message be released to an outlet, a message of 2 items will be sent

prepend

cyclone

prepend a message with another message

prepend

flatspace iemlib

list prefixer

prepend

cxc

list prefixer -> NV

prepend_ascii

iemlib

prepends a message + selector symbol

prepend_output

an identifier

prepent

list-abs

shortcut for [list prepend]-[list trim]

pwm

hcs

pulse width modulation at message rate

rec-name

jmmmp

automatic naming for a record / playback machine

receive13 r13 send13 s13

ext13 flatspace

like r and s, with set messages

receive2list

iemlib

convert received message to a list message and then the incoming message

recent

ggee

output only most „recent“ messages

relay

flatspace zexy

relay messages according to their first element

remote

flatspace motex

send data to any receive object

repack

flatspace zexy

(re)pack atoms to packages of a given size

repeat

flatspace zexy

repeat a message several times

scrolllist

displays and scrolls a text in a patch window

segregate

segregate the input to various outlets, depending on the type

sendlocal sl receivelocal rl

ggee

send messages locally per canvas

serialize

cxc flatspace ggee

turn a stream of floats into a list

sguigot

jmmmp

spigot with GUI

sieve

ekext

takes integers and maps them to floats

simile

ekext flatspace

compare two numbers according to an error window

slider sliderh

ggee

slider from ggee

sort

flatspace zexy

shell-sort a list of floats

soundfile_info

flatspace iemlib

show the header data of a wav file

speedlim maxlib_speedlim

cyclone iemlib

speed limit for incoming messages

spell

cyclone

convert input to ascii values

split maxlib_split

cyclone iemlib

look for a range of numbers

split_my_msgs

hcs

split a strem of messages

split_path

flatspace hcs

like splitfilename

split3

iemlib

part a numeric stream into 3 ways

splitfilename

flatspace iemlib

split into path and filename

spray

cyclone

distribute an integer to a numbered outlet

sprinkler

flatspace

dynamic control message dissemination

sprintf

cyclone

format a message of strings and numbers

sroute

list-abs

settable route

state

flatspace ggee

saves settings in a patch to a file

strcat

markex

prepends its text to any symbol that is sent to it

strcmp

flatspace zexy

compare 2 lists as if they were strings

stripfilename

flatspace iemlib

strip the first or last characters of a symbol

strippath

ext13 flatspace

strip a path from a filename

subst

flatspace motex

self-similar substitution/diminution of rows

substitute

cyclone

substitue a symbol for another symbol in a message

switch

cyclone

output a message from a specific inlet

sync

flatspace motex

extended trigger object based on sync from jMax

t3_bpe

flatspace iemlib

time-tagged trigger break point envelope

take-two

list-abs

print all combinations of length 2 without repetition

temperature

flatspace maxlib

output number of input changes in N ms

thresh

cyclone

combine numbers into a list that are received close together

ticker

flatspace ggee

toggle from ggee

tilt

flatspace maxlib

measure “tilt” of input

toddle

ggee

bang that routes messages through

TogEdge

cyclone

report zero / nonzero transitions

toggle_mess

flatspace iemlib

control a message-box with multiple content (abbr. tm)

transf_fader

flatspace iemlib

transforms a slider range

universal

cyclone

send a message to all instances of the same class in this patch (and subatches if desired)

unroute

flatspace maxlib

merges all inputs into one output and prepend an identifier

unsymbol

flatspace iemlib

convert a symbol to a anything selector

unwonk

unpack which sends unused symbols to the last outlet

Uzi

cyclone

send a specified number of bangs as fast as possible

xerox

zl

cyclone

multi purpose list processing object

 

Name

Library/Path

Function

Math

Vanilla Objects

& | << >> && || %

logical operators

+ – * / pow

arithmetic

> >= = <= <

relational operators

clip

force a number into a range

max min

greater or lesser of 2 numbers

mod div sin cos tan atan atan2 exp log abs sqrt pow

higher math

mtof ftom dbtorms rmstodb dbtopow powtodb

convert acoustical units

random

pseudorandom integer generator

wrap

wrap a number to range [0,1]

Extended Objects

runden

set numbers behind the comma

.

scalar multiplication of vectors (=lists of floats)

1/x inv

flatspace ggee

takes the inverse of the input

about

flatspace mjlib

delivers a number that is “about” the same as the input number

accum

cyclone

store, add to, and multiply a number

acos asin atan

cyclone

arc functions

anal

cyclone

generates a histogram of number pairs received

attract1 base base3 gingerbreadman henon hopalong ikeda latoocarfian latoomutalpha latoomutbeta latoomutgamma lorenz martin popcorn quadruptwo rossler standardmap

flatspace

attractors

autocal

la-kitchen

autocalibrating scaler (for sensors)

autoscale

hcs mapping

scales a stream of numbers with dynamic input range

average gem-average

flatspace markex

average together a series of numbers

beta bilex cauchy expo gauss linear poisson triang weibull

flatspace maxlib

random numbers distribution

breakpoint breakpoint_smooth

mapping

curves the input range with a double-linear interpolator with 2 control parameters

bytemask debytemask

mapping

generate / decode a bitmask byte from 8 inlets

capture

cyclone

store and edit numbers

cart2pol

convert cartesian coordinates to polar

cart2sph

convert cartesian coordinates to spheric

cartopol poltocar

cyclone

cartesian to polar conversion

catch_extremum catch_extremum2

la-kitchen

return the last locals minimum and maximum values

center_point

mapping

convert 0-1 data into a center point with two 0-1 ranges

circular circular_seat circular_sigmoid

mapping

curves the input range with a double-circular seat with 1 control parameter

Clip

cyclone

limit numbers to a range

clip

correlation

mapping

correlation of 2 different streams

cosh sinh tanh

cyclone flatspace

hyperbolic functions

cubic_seat

mapping

curves the input range with cubic curves

curve

mapping

curves the input range

curve_exp curve_log

mapping

maps the input range to an exponential / logaritmic curve

curve_fade

mapping

3rd order polygone for natural fade

curve_graph

mapping

maps the input range to an arbitrary curve

db2v v2db

flatspace iemlib

db to rms conversion

dbtofad fadtodb

iemlib

convert midi-db to fader scale

deg2hid hid2deg

hid

conversion [hid]-range to degrees

deg2rad

convert degree to radiant

degrees->mapping mapping->degrees

mapping

converts mapping – degrees

delta

flatspace maxlib

calculate 1st or 2nd order difference

diff_n

mapping

diferentiate the input

distance distance2d distance_n

mapping

distance from a point and a stream (normal, 2d, Nd)

divide

flatspace maxlib

like “/” but calculates result when second inlet is changed

divmod

flatspace maxlib

calculates division and modulo

drunk

cyclone

output random numbers in a moving range

elliptic elliptic_seat elliptic_sigmoid

mapping

curves the input range with 2 ellipses

exponential_curve exponential_seat exponential_sigmoid

mapping

curves the input range with a double-exponential seat

expr

vanilla

expression evaluation

f2note

flatspace iemlib

converts frequency to notes + cents

fadtorms rmstofad

iemlib

fader scale to rms

ffpoly

creb flatspace

finite field polynomial

fir iir

mapping

filters

fir_filter

la-kitchen

fir filter with coefficient list

fir_hip_n fir_mean_n

la-kitchen

fir high / low-pass filter with order n

funbuff

cyclone

store x,y pairs of numbers together

fwarp

creb flatspace

tangent warp frequency

gaussian

mapping

generate gaussian curve

hid_average hid_smooth

hid

smooths a stream of numbers through weighted averaging

hid_centered

hid

convert 0-1 to -1-1

hid_cube hid_cuberoot hid_exp hid_log hid_square hid_squareroot

hid

maps the input range to the chosen curve

hid_graph

hid

draw an arbitrary curve, which is applied to the input range

hid_invert

hid

inverts the stream of numbers

hid_lowpass

hid

smooths a stream of numbers through audio conversion + lowpass filtering

hid_polar

hid

converts cartesian to polar coordinates

hid_spiral

hid

converts cartesian to spiral in polar coordinates

hid2rad rad2hid

hid

conversion [hid]-range to radians

Histo

cyclone

generates a histogram of the received numbers

history

flatspace maxlib

calculates the average of the items (floats) that came in within the last N miliseconds

iir_hip iir_lop

la-kitchen

iir high / low-pass filter

invert

flatspace markex

non-zero numbers to 0, 0 to 1

limit

flatspace maxlib

limits input to lie between boundaries

list-accum

list-abs

add all floats in a list

list-add

list-abs

add two lists element by element

list-centroid

list-abs

calculates the centroid of a mass of a float-list

list-dotprod

list-abs

dot-product of two float-lists

list-emath

list-abs

do math on float-lists element by element

list-equalize

list-abs

scale a float-list so that all float elements sum up to 1

list-geometric-mean

list-abs

calculate the geometric mean of a float-list

list-harmonic-mean

list-abs

calculate the harmonic mean of a float-list

list-inter

list-abs

elementwise linear interpolation between two float-lists

list-inter-many

list-abs

elementwise linear interpolation between several internally-stored float-lists

list-invint

list-abs

inverse intervals of a float-list

list-math

list-abs

simple mathematical operations on lists

list-mean

list-abs

calculates the arithmetical mean of a float-list

list-minmax

list-abs

find minimum and maximum in a float-list

list-mult

list-abs

multiply two float-lists

list-normalize

list-abs

normalizes a float-list

list-round

list-abs

round all numbers in a float-list to a nearest multiple

list-sub

list-abs

subtract two float-lists element by element

list-unitvec

list-abs

normalize a float-list geometrically

logistic_sigmoid

mapping

curves the input range with a double-exponential seat

mandelbrot

ext13 flatspace

z=z*z+c

mavg

flatspace zexy

moving average filter

max_n min_n

la-kitchen

return the maximum / minimum from the last n values

maximum

cyclone

output the greatest in a list of numbers

mean

cyclone

find the running average of a stream of numbers

mean

flatspace zexy

get the mean value of a list of floats

minimum

cyclone

output the smallest in a list of numbers

minmax

flatspace zexy

get minimum and maximum of a list of floats

minus

flatspace maxlib

like “-“ but calculates result when leftmost or second inlet is changed

mlife

flatspace maxlib

cellular automata object

mtosr

bsaylor flatspace

converts MIDI note value to samplerate

multi

flatspace maxlib

like “*” but calculates result when leftmost or second inlet is changed

n2m

flatspace mjlib

note to midi

notescale

hid

scales a stream of numbers to MIDI note numbers

offer

cyclone

store x, y pairs of values (x is int only)

one_n

la-kitchen

returns 1 if the last n datas were non-zeros

past

cyclone

report when the input decreases beyond a certain number

Peak

cyclone

output only numbers greater than the previous

pi

hcs

value of pi as accurate as Pd can manage

plus

flatspace maxlib

like “+” but calculates result when leftmost or second inlet is changed

pol2cart

convert polar coordinates to cartesian

pol2sph

convert polar coordinates to spheric

prime

flatspace zexy

prime number detector

rad2deg

convert radiant to degree

randomF randF

flatspace markex

floating point random number

range

deprecated flatspace

like [scale]

ratio

creb flatspace

multiply by 2^k so result is 1<=r<2 (transposer)

rewrap

flatspace maxlib

wraps floats back and forth into a range

rmstofad

rms to fader characteristic

round_zero

flatspace iemlib

round numbers near zero to zero

scale

scale input from a certain input range to lie between output boundaries

seuil_n

la-kitchen

returns 1 if the difference between the current sample and the sample n before is up to the threshold value

shuffle

flatspace motex

no-repeat random number generator

sph2cart

convert spheric coordinates to cartesian

sph2pol

convert spheric coordinates to polar

steady

ekext flatspace

takes stream of numbers, outputs max, min, through

sum

flatspace zexy

sum the elements of a list

Through

cyclone

output only numbers smaller than the previous

triple-scale

list-abs

interpolate linearly between two points

tripleRand

flatspace markex

three random numbers

v+ v

v* v/ math on a list of numbers

wrap

wrap the float input between to boundaries

wrap maxlib_wrap

flatspace iemlib maxlib

wraparound

zero_n.pd

la-kitchen

returns 1 if the last n datas were 0

zscale

scale von pdjimmies

 

Name

Library/Path

Function

Time

Vanilla Objects

cputime

measure CPU time

delay

bang after time delay

line

ramp generator

metro

send „bang“ periodically ala metronome

pipe

delay a message – a message „delay line“

realtime

ask operating system for elapsed real time

timer

measure logical time

Extended Objects

bpm

calculate meanvalue of times between clicks

clock

show (simple) clock

help

timeconvert shows conversion of hertz, milliseconds, bpm, …

clock

jmmmp

chronometer with display in secs

date

flatspace zexy

get system date

exciter

controls a list of bang events scheduled in time

ISOdate ISOtime

hcs

output current date / time in ISO format

linedrive

cyclone

scale numbers exponentially to use with line~

metroplus

flatspace mjlib

allows complex timing bangs to be delivered

metrum

jmmmp

metro with GUI

monorhythm

flatspace mjlib

basic rhythm pattern building blocks that allows polyrhthms to be generated quickly and easily

prob

cyclone

weighted series of random numbers

pulse

flatspace motex

a better metro

step

flatspace maxlib

output sequence of numbers (similar to “line”)

stoppuhr

jmmmp

chronometer with 2 layers

t3_delay

flatspace iemlib

time tagged trigger delay

t3_metro

flatspace iemlib

time tagged trigger metronom

t3_timer

flatspace iemlib

time tagged trigger timer

time

flatspace zexy

get system time

timebang

flatspace maxlib

send out bangs at given times of day

tripleLine

flatspace markex

line object for 3 values

uhr

jmmmp

shows the time

urn

cyclone flatspace

rng without duplicate numbers

utime

cxc flatspace

output seconds since epoch and microsecond faction

velocity

flatspace maxlib

get velocity of digits per second

 

Name

Library/Path

Function

Midi

Vanilla Objects

makenote

send note-on messages and schedule note-off for later

notein ctlin pgmin bendin touchin polytouchin midiin sysexin

MIDI input

noteout ctlout pgmout bendout touchout polytouchout midiout

MIDI output

stripnote

take note-off messages out of a MIDI stream

Extended Objects

beat

flatspace maxlib

beat tracker

Borax

cyclone

reports current info on note on/off

borax

flatspace maxlib

analyse incoming midi notes

chord

flatspace maxlib

tries to detect chords

flush

cyclone

provide note offs for held notes

gestalt

flatspace maxlib

gestalt detection for monophonic melodies

m-i

jmmmp

automatic conversion of MIDI controller

midiflush

cyclone

send note offs for all hanging notes in a raw midi state

midiformat midiparse

cyclone

de/construct midi messages

mk

jmmmp

fast visual control of MIDI inputs

pitch

flatspace maxlib

get info about pitch

rhythm

flatspace maxlib

detects the beat of rhythmic patterns

score

flatspace maxlib

score follower that tries to match incoming MIDI data to a score stored in an array

sustain

cyclone

hold note offs and output them on request

xbendin xbendin2 xbendout xbendout2

cyclone

extra precision midi pitchbend objects (14 bit)

xnotein xnoteout

cyclone

interpret midi messages with release velocity

 

Name

Library/Path

Function

Tables

Vanilla Objects

tabread

read numbers from a table

tabread4

read numbers from a table with 4-point interpolation

tabwrite

write numbers to a table

soundfiler

read and write soundfiles to arrays

Extended Objects

arraycopy

flatspace maxlib

copy data from one array to another

arraysize

flatspace

returns the size of an array

envgen

flatspace ggee

envelope generator

pianoroll

graphical sequencer controller

tabdump

flatspace zexy

dump the contents of a table as a list

tabminmax

flatspace zexy

get minimum and maximum of a table

tabset

flatspace zexy

set a table with a list of floats

tabreadmix~

creb flatspace

overlap add tabread clone

 

Name

Library/Path

Function

Misc

Vanilla Objects

loadbang

send „bang“ automatically when patch loads

serial

serial device control for NT only

netsend

send Pd messages over a network

netreceive

listen for incoming messages from network

qlist

text-based sequencer

textfile

read and write textfiles

openpanel

„open“ dialog

savepanel

„save as“ dialog

bag

collection of numbers

poly

MIDI-style polyphonic voice allocator

key keyup

numeric key values from keyboard

keyname

symbolic key name

declare

set search path and/or load libraries

Extended Objects

hid

hcs

HID protocoll reader

classpath

hcs

returns each path in the global classpath

import

hcs

loads libraries from the path to local namespace

parazit

gnd

a patch for disrupting other patches using internal messages

netclient

flatspace maxlib

simple client that connects to netserver or to pd’s native netreceive object

netdist

flatspace maxlib

distribute data to several netreceive

netrec

flatspace maxlib

?report of netsend connections?

netserver

flatspace maxlib

netclient

getenv

flatspace motex

sends value of an environment variable argument on bang

init ii

flatspace iemlib

initialize anything by loadbang

grid

iem_pbank_csv

flatspace iemlib

parameter-bank with csv-syntax

mapper

msgfile

flatspace zexy

read and write messages into text files

operating_system

flatspace zexy

get the current OS

pool

a hierarchical storage

stripdir

flatspace ggee

strips all leading directories from a path

system

flatspace motex

send a system message to the console

vbap

ggee

vector based amplitude panning external

wintablet

external for using Wacom tablets on Windows

ENV

cxc flatspace

get and set environment variables

proc

cxc flatspace

interface to the linux proc filesystem

comment

cyclone

text comment with some formatting options, meant to be Max/MSP compatible

mousefilter

cyclone

passes numbers only when mousebutton is up

MouseState

cyclone

report mouse x/y/deltax/y and buttonpress

linuxevent

deprecated flatspace

outputs raw events from the linux event system

linuxmouse

deprecated flatspace

takes events directly from a linux event device

filesize fsize

ext13 flatspace

gives size of a file

wavinfo

ext13 flatspace

get samples, channels, bitspersample, amplerate of a file

beatpipe

flatspace

event scheduler / quantizer

comport

flatspace

serial port interface

folder_list

flatspace hcs

listing of files based on a wildcard pattern

getdir

flatspace ggee

get the directory this patch is operating in

ifeel

flatspace hcs

control the pulse of an iFeel mouse

image

flatspace ggee

incorporate images

openpatch opa

flatspace

open a patch file

popen

flatspace

shell commands

popup

flatspace iemlib

popup menu

shell

flatspace ggee

run commands in a UNIX shell

failsafe

hcs

turns off dsp and / or quits pd

file_type

hcs

find the file type of a file

gid->group_name group_name->gid

hcs

convert group name <-> GID

group

hcs

fetch password data based on a UID or group name

passwd

hcs

fetch password data based on a UID or username

stat

hcs

gets information about files

uid->username username->uid

hcs

convert group name <-> GID

version

hcs

version of the currently running Pd

joystick

hid

use a joystick device with Pd

keyboard

hid

use a keyboard device with Pd

keygate

hid mapping

simple keyboard-controlled gate

mouse

hid

use a mouse device with Pd

datei-l datei-o

jmmmp

send the message „open …“

datei-r

jmmmp

send the message „read …“

datei-w

jmmmp

send the message „write …“

pd-colors

jmmmp

Tcl/Tk and data structure’s color palettes

gui-edit

jmmmp

GUI-editor abstraction

oscD

jmmmp

counts received OSC messages

oscS

jmmmp

interface for [sendOSC]

tastin

jmmmp

gate for keyboard input

keybang

keyboardkeys

key bang GUI

keytoggle

keyboardkeys

key toggle GUI

keyupdown

keyboardkeys

increase/decrease of any value GUI

 

Name

Library/Path

Function

Audio Glue

Vanilla Objects

adc~

audio input

dac~

audio output

bang~

output bang after each DSP cycle

block~

specify block size and overlap

switch~

switch DSP on and off

catch~ throw~

summing signal bus and non-local connection

line~

audio ramp generator

vline~

high-precision audio ramp generator

threshold~

trigger from audio signal

snapshot~

convert a signal to a number on demand

vsnapshot~

deluxe snapshot~

samplerate~

get the sample rate

readsf~

read a soundfile

receive~ send~

one-to-many nonlocal signal connections

writesf~

write audio signals to a soundfile

sig~

convert numbers to audio signal

Extended Objects

blockmirror~

flatspace zexy

play back a signal-vector in a time-reversed way

blockswap~

flatspace zexy

swap the upper and lower half of a signal-vector

cooled~

sound editor

dfreq~

flatspace zexy

frequency detector that counts zero-crossings

envrms~

flatspace zexy

like env~, but outputting rms instead of dB

fade~

flatspace iemlib

fade-in fade-out shaper (need line~)

iem_blocksize~

flatspace iemlib

current blocksize of a window

iem_samplerate~

flatspace iemlib

samplerate of a window in Hertz

int_fract~

iemlib

split signal float to integer and fractal part

Line~

cyclone

line~ with lists and bang in the end

mp3play~

flatspace iemlib

mpeg layer III player

pack~ unpack~

flatspace zexy

convert signals to float-packages

oggamp~

flatspace pdogg

streaming client

oggcast~

flatspace pdogg

stream to IceCast2 or JRoar

oggread~

flatspace pdogg

file player

oggwrite~

flatspace pdogg

strean to file

ogglive~

patcher~

16×16 patchbay inspired by Synthi AKS

pdf~

flatspace zexy

probability density function

peakenv~

flatspace iemlib

signal-peak-envelope

polygate~

flatspace motex

switch between multiple signal inputs

prvu~

flatspace iemlib

peak- rms- vu-meter

pvu~

flatspace iemlib

peak- vu-meter

rvu~

flatspace iemlib

rms- vu-meter

rlshift~

shift signal vector elements left or right

Scope~

cyclone

sfplay sfrecord

flatspace zexy

play back/record (multichannel) soundfiles <- NICHT VERWENDEN

sfread~ sfwrite~

flatspace ggee

NICHT VERWENDEN

sigzero~

flatspace zexy

detects whether there is signal or not

spigot~

signal router

tavg~

flatspace zexy

arithmetic mean of a signal between two bangs

t3_sig~

flatspace iemlib

time tagged trigger sig~

t3_line~

flatspace iemlib

time tagged trigger line~

bthresher~

similar to thresher~ but with more control

thresher~

an amplitude/frequency sensitive gating object

unsig~

iemlib

signal to float converter

xgroove~

xrecord~

xplay~

zerocross~

noise detector, counts zero crossings of signal

count~

cyclone

sample counter

record~

cyclone

read and write sample values

simile~

ekext flatspace

compare two signals according to an error window

zeroxpos~

ekext flatspace

find n-th zero crossing in frame

piperead~ pipewrite~

ext13 flatspace

like sfread and write, but non-blocking

throw13~ t13~ catch13~ c13~

flatspace [ext13]

like catch~ and throw~, with set messages

receive13~ send13~

flatspace [ext13]

like r and s, with set messages

streamin~ streamout~

flatspace ggee

streaming client

blocksize_in_ms

hcs

blocksize in ms

pwm~

hcs

pulse width modulation at audio rate

mat~ met~ maat~ meet~

jmmmp

mono/stereo level meter with amplitude control

snaps~

jmmmp

snapshot~ GUI implementation

 

Name

Library/Path

Function

Audio Math

Vanilla Objects

+~ -~ *~ /~

operators on audio signals

max~ min~

maximum or minimum of 2 inputs

clip~

restrict a signal to lie between two limits

q8_rsqrt~

signal reciprocal square root

q8_sqrt~

signal square root

wrap~

remainder modulo 1

fft~ ifft~

forward and inverse complex FFT

rfft~ rifft~

forward and inverse real FFT

framp~

estimate frequency and amplitude of FFT components

mtof~ ftom~ rmstodb~ dbtorms~ rmstopow~ powtorms~

conversions for audio signals

pow~ log~ exp~ abs~

math

Extended Objects

# >~, <~, ==~, &&~, ||~

logical operators

abs~

cyclone flatspace markex zexy

absolute value of a signal

absgn~

flatspace zexy

absolute value + signum

addl~

iemlib

signal addition with line~

amp~

hcs

smooth amplitude control

atan2~

cyclone flatspace ggee

get the phase from a imaginary value of the fft

avg~

cyclone flatspace zexy

arithmetic mean of 1 signal-vector

Clip~

cyclone

limit numbers to a range

divl~

iemlib

signal divison with line~

exp~ log~

signal math

expr~ fexpr~

vanilla

expression evaluation

ln~

flatspace motex

log~

m2f~

flatspace iemlib

convert MIDI pitch to frequency (obsolete)

mull~

iemlib

signal multiplication with line~

multiline~

flatspace zexy

line~d multiplication of multiple signals

pol2rec~

flatspace motex

inverse of rec2pol~

rec2pol~

flatspace motex

convert rectangular coordinates to polar

round~

iemlib

round signal float to nearest integer

sgn~

flatspace zexy

signum of a signal

sin_phase~

flatspace iemlib

calculate phase difference between 2 sine-waves, in samples

subl~

iemlib

signal subtraction with line~

t3_sig~

convert numbers to signal with sample accuracy

bfft~

creb flatspace

reordered fft

bitsplit~

creb

convert signal to binary vector

blocknorm~

creb

normalize a (set of) dsp block(s) (i.e. for spectral processing)

dwt~

creb flatspace

discrete wavelet transform

idwt~

creb flatspace

discrete inverse wavelet transform

delta~

cxc cyclone flatspace

difference between this and last sample

acos~ asin~atan~

cyclone

arc functions

acosh~

cyclone

asinh~

cyclone

atanh~

cyclone

average~

cyclone

cosh~ sinh~ tanh~

cyclone

hyperbolic functions

cosx~ sinx~ tanx~

cyclone

log~

cyclone

cartopol~ poltocar~

cyclone

cartesian to polar conversion

pow~

cyclone

framescore~ framespect~

ekext flatspace

calculates weighted similarity value for 2 signal vectors

hssc~

ekext flatspace

highest significant spectral component

mandelbrot~

ext13 flatspace

z=z*z+c

bwin~

flatspace

multiplies a signal block with a window

bmax~

flib

gives block max

irreg~

flib

irregularity

melf~

flib

creates a mel spaced filterbank to generate mel frequency cepstral coefficients

mspec~

flib

get amplitude or power spectrum from fft

peak~

flib

get spectral peaks from magnitudes / estimate frequency

pspec~

flib

get phase spectrum from fft

sc~

flib

spectral centroid

scm~

flib

spectral flatness measure

ss~

flib

spectral smoothness

trist~

flib

tristimulus x, y, z

 

Name

Library/Path

Function

Audio Oscillators and Tables

Vanilla Objects

phasor~

sawtooth generator

cos~

cosine waveshaper

osc~

cosine wave oscillator

tabwrite~

write a signal in an array

tabplay~

play a table as a sample (non-transposing)

tabread~

table lookup

tabread4~

4-point interpolating table lookup

tabosc4~

4-point interpolating table oscillator

tabsend~

writes one block of a signal continuously to an array

tabreceive~

read a block of signal from an array continuously

Extended Objects

agogo~

bamboo~

blotar~

bonk~

vanilla/bonk~

attack detector for small percussion instruments

bowed~

bowedbar~

brass~

buzz~

subctractive synthesis without filters

cabasa~

cavoc~

An 8 rule cellular automata that generates spectra

cavoc27~

A 27 rule cellular automata object

chase~

uses a sync signal to determine who gets out which outlet

clarinet~

dcblock~

blocks DC components in audio signals

dirac~

flatspace zexy

produces a unit:sample:sequence

escalator~

fiddle~

vanilla

pitch estimator and sinusoidal peak finder

flute~

formant~

formant synthesis

gq~

equalizer with variable number of filter banks

guiro~

LFO_noise~

flatspace iemlib

2-point-interpolated time-stretched white noise

loop~

extra flatspace loop~

phase generator for looping samples

lrshift~

flatspace lrshift~

shift signal vector elements left or right

mandolin~

marimba~

morse

flatspace mjlib

convert text to morse code

munger~

granular sampling instrument

noish~ noisi~

flatspace zexy

draws a random number every n samples and interpolates between

paf~ 0.06

pink~

cyclone iemlib

pink noise (-3dB per octave)

plucked~

rechteck~

a squarewave generator

scrub~

sinesum

examples of sinesum

sleigh~

sleigh bell

step~

flatspace zexy

unit:step sequence or a rectangle:window

susloop~

bsaylor flatspace

another phase generator for sample looping

syncgrain~

implements synchronous granular synthesis

vibraphone~

testsig~

choose noise, osc, phasor by clicking

dynwav~

creb flatspace

dynamic wavetable: use a signal block as wavetable

junction~

creb flatspace

circulant lossless signal junction

sbosc~

creb

smallband oscillator (i.e. for formant synthesis)

scrollgrid1D~

creb

a stabilized scroll grid chaotic oscillator

index~

cyclone

sample playback without interpolation

lookup~

cyclone

transfer funcion lookup table

peek~

cyclone

read and write sample values

play~

cyclone

position based sample playback

rand~

cyclone

bandlimited random noise

wave~

cyclone

variable size wavetable

ambi_rot

iem_ambi

ambisonic rotation

ambi_encode ambi_decode ambi_decode3 ambi_decode_cube

iem_ambi

ambisonic encoding / decoding

bin_ambi_reduced_decode_fft2 bin_ambi_reduced_decode_2

iem_bin_ambi

ambisonic binaural encoding / decoding

 

Name

Library/Path

Function

Audio Filters

Vanilla Objects

env~

envelope follower

vcf~

voltage-controlled bandpass filter

noise~

uniformly distributed white noise

hip~

one-pole high pass filter

lop~

one-pole low pass filter

bp~

bandpass filter

biquad~

2-pole-2-zero filter

samphold~

sample and hold unit

print~

print out raw values of a signal

rpole~

real one-pole (recursive) filter, raw

rzero~

real one-zero (non-recursive) filter, raw

rzero_rev~

real one-zero (non-recursive) „reverse“ filter, raw

cpole~

complex one-pole (recursive) filter, raw

czero~

complex one-zero (non-recursive) filter, raw

czero_rev~

complex one-zero (non-recursive) „reverse“ filter, raw

Extended Objects

bandpass equalizer highpass highshelf hlshelf lowpass lowshelf notch

flatspace ggee

coefficients for biquad~

1p1z

iemlib

control IIR filter 1. order

aenv~

bsaylor flatspace

asymptotic ADSR envelope generator

allpass~

cyclone

allpass filter

ap1~ ap2~

iemlib

allpass 1. / 2. order

bpq2~ bp2~

iemlib

bandpass 2.order with Q inlet

bpw2~

iemlib

bandpass 2.order with bandwidth inlet

bsq2~

iemlib

bandstop 2.order (notch) with Q inlet

bsw2~

iemlib

bandstop 2.order (notch) with bandwidth inlet

burrow~

a cross-referenced filtering object

centerring~

a spectral modulation object

codepend~

a classic block convolution object

comb~

cyclone

comb filter

complex

mod~ frequency shifter

compressor~

audio compressor

complex-mod~

vanilla

frequency shifter

convol~

convobrosfilter

crossx~

a cross synthesis object with gating

cverb~

implementation of the Csound reverb

dentist~

a partial knockout object

disarrain~

an interpolating version of disarray~

disarray~

a spectral redistribution object

drown~

a noise reduction (or increase) object

enveloper~

the (old???) envelope generator of iemlib

ether~

another spectral compositing object

filter~

flatspace iemlib

multiple object for all useful IIR-filters 1. and 2. order like lowpass, highpass, bandpass, bandstop, allpass, etc

filterbank~

outputs the frequence response against a set of band pass filters

filtersme1~

a hard filtering of low(soft) frequencies

filtersme2~

filtering by drawing with mouse in array

FIR~

flatspace iemlib

convolve a signal with an array

freeverb~

freeverb

Schroeder/Moorer reverb model

hilbert~

vanilla

phase quadrature of input for complex modulation

hml_shelf~

flatspace iemlib

high-mid-low-shelving filter

hp1~ hp2~

iemlib

highpass 1. / 2. order

hp2_butt~ hp3_butt~ hp4_butt~ hp5_butt~ hp6_butt~ hp7_butt~ hp8_butt~ hp9_butt~ hp10_butt

iemlib

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~

iemlib

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~

iemlib

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~

iemlib

highpass 2.3.4.5.6.7.8.9.10.order with critical damping

leaker~

a sieve based cross fader

limiter~

flatspace zexy

a limiter/compressor module

lp1~ lp2~

iemlib

lowpass 1. / 2. order

lp1_t~

flatspace iemlib

lowpass 1.order with time_constant inlet

lp2_butt~ lp3_butt~ lp4_butt~ lp5_butt~ lp6_butt~ lp7_butt~ lp8_butt~ lp9_butt~ lp10_butt~

iemlib

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~

iemlib

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~

iemlib

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~

iemlib

lowpass 2.3.4.5.6.7.8.9.10.order with critical damping

maverage~

moving average filter with IIR

mindwarp~

a spectral formant warping object

moog~

flatspace ggee

signal controlled “moog” resonant lowpass

morphine~

a morphing object

multiverb~

Schroeder/Moorer reverb model

multyq~

a four band filter

pan~

equal power stereo panning

pansig~

flatspace motex

same as above but takes a signal modulator rather than a float

para_bp2~

flatspace iemlib

parametril bandpass 2. order

pin~

flatspace mjlib

randomly delivers the input signal to either the right or left outlet with a given probability

pitchnoise~

Harmonic/inharmonic monophonic timbre separator

presidency~

a spectral sampler with pitch control

pvgrain~

a spectrum analyzer for granular resynthesis

pvharm~

a harmonizer

pvoc~

an additive synthesis phase vocoder

pvtuner~

a spectrum quantizer for tuning to arbitrary scales

pvwarp~

a non-linear frequency warper

reanimator~

an audio texture mapper

resent~

similar to residency~ but with independent bin control

residency~

a spectral sampler useful for time scaling

scrape~

a noise reduction (or increase) object with frequency control

shapee~

a frequency shaping object

swinger~

a phase swapping object

taint~

a cross synthesis object

vacancy~

a spectral compositing object

xsyn~

a cross synthesis with compression object

pvcompand~

a spectral compressor/expander object

quantize~

flatspace zexy

quantize a signal with a variable step-number

mov_avrg_kern~

flatspace iemlib

moving average filter kernel

mypol2rec~

fft stuff, needed as abstraction for some other patches

myrec2pol~

fft stuff, as above (ggee)

para_pb2~

parametrical bandpass ???

rbpq2~

iemlib

resonance bandpass 2.order with Q inlet

rbpw2~

iemlib

resonance bandpass 2.order with bandwidth inlet

reccombfilter~

rough combfilter feedback

rev1~

vanilla

series of allpass with exponentially growing delay lines

rev2~

vanilla

simple 1-in, 4-out reverberator

rev3~

vanilla

hard-core, 2-in, 4-out reverberator

schroeder~

schroeder reverb

swap~

flatspace zexy

byte-swap a 16bit signal

svf~

bsaylor cyclone flatspace

state-variable filter

vcf_hp2~ vcf_hp4~ vcf_hp6~ vcf_hp8~

iemlib

highpass 2.4.6.8.order with freq and Q signal inlets

vcf_lp2~ vcf_lp4~ vcf_lp6~ vcf_lp8~

iemlib

lowpass 2.4.6.8.order with freq and Q signal inlets

vcf_bp2~ vcf_bp4~ vcf_bp6~ vcf_bp8~

iemlib

bandpass 2.4.6.8.order with freq and Q signal inlets

vcf_rbp2~ vcf_rbp4~ vcf_rbp6~ vcf_rbp8~

iemlib

resonance bandpass 2.4.6.8.order with freq and Q signal inlets

bdiag~

creb flatspace

block diagonal state space system (spectral processor)

cheby~

creb flatspace

chebyshev polynomial waveshaper

dist~

creb flatspace

dist~ waveshaper

eadsr~

creb flatspace

exp. attack decay sustain release

ead~

creb flatspace

exp. attack decay

ear~

creb flatspace

exp. attack release

lattice~

creb flatspace

lattice~ filter

permut~

creb flatspace

random permute a signal block

qmult~

creb flatspace

multiply 2 quaternion signals

qnorm~

creb flatspace

normalize a quaternion signal (or any 4 channel sig)

resofilt~

creb

a reso filter (4pole, 3pole)

xfm~

creb flatspace

coupled frequency modulation

reson~

cxc cyclone flatspace markex

interpolating reson filter

pan_gogins~

deprecated flatspace

modification of pan~

voiding_detector~

ekext

estimates wether a frame of speech is voiced or unvoiced

scramble~

ext13 flatspace

big fun with spoken words or beats

ap1c~ ap2c~

iemlib

allpass 1. / 2. order for filter cascades

hp1c~ hp2c~

iemlib

highpass 1. / 2. order for filter cascades

lp1c~ lp2c~

iemlib

lowpass 1. / 2. order for filter cascades

 

Name

Library/Path

Function

Audio Delay

Vanilla Objects

delwrite~

writes a signal in a delay line

delread~

read a signal from a delay line

vd~

reads a signal from a delay line at a variable delay time (4-point-interpolation)

Extended Objects

blockdelay~

high-resolution delay for smaller delay times

delay~

cyclone

delay incoming signal for a number of samples

z~

flatspace zexy

samplewise delay

fdn~

creb flatspace

feedback delay network

 

Name

Library/Path

Function

Subwindows

Vanilla Objects

pd

define a subwindow

inlet outlet

control inlet / outlet

inlet~ outlet~

audio inlet / outlet

table

array of numbers

Extended Objects

dyn~

dynamic object mangement

py

python script objects

 

Name

Library/Path

Function

Data Templates and Acessing Data

Vanilla Objects

drawcurve filledcurve

draw a curve

drawpolygon filledpolygon

draw a polygon

plot

draw array elements of scalars

drawnumber

draw numeric fields for data structures

struct

declare the fields in a data structure

pointer

remember the location of a scalar in a list

get

get values from a scalar

set

set values in a scalar

element

get pointer to an element of an array

getsize

get the number of elements of an array

setsize

resize an array

append

add item to a list

sublist

get a list from a field of a scalar

 

Name

Library/Path

Function

GEM

Extended Objects

accumrotate

manipulation

accumulated rotation

alpha

manipulation

enable alpha blending

ambient ambientRGB

manipulation

ambient coloring

camera

circle

geometric

renders a circle

color colorRGB

manipulation

colouring

colorSquare

geometric

renders a square with several colors

cone

geometric

renders a cone

cube

geometric

renders a cube

cuboid

geometric

renders a cuboid box

curve

geometric

renders a bezier-curve

curve3d

geometric

renders a 3d bezier-curve

cylinder

geometric

renders a cylinder

depth

turn on / off depth test

diffuse diffuseRGB

manipulation

diffuse colouring

disk

geometric

renders a disk

emission emissionRGB

manipulation

emission colouring

fragment_program

shader

load and apply an ARB fragment shader

gemhead

connect gem objects to the window manager

gemkeyboard gemkeyname

keyboard events in the gem window

gemlist_info

information

get current transformation of a gemlist

gemmouse

mouse events in the gem window

gemwin

access to the window manager

glsl_fragment

shader

load a GLSL fragment shader

glsl_program

shader

link GLSL-modules into a shader program

glsl_vertex

shader

load a GLSL vertex shader

hsv2rgb rgb2hsv

convert between RGB and HSV colorspace

imageVertp

geometric

map luminance to height

light world_light

non-geometric

adds a point-light to the scene

pix_blobtracker

pix analysis

blob detector and tracker

rgb2yuv yuv2rgb

convert between RGB and YUV colorspace

linear_path spline_path

reads out a table

model

geometric

renders an Alias/Wavefront-Model

multimodel

geometric

load multiple an Alias/Wavefront-Model and renders one of them

newWave

geometric

renders a waving square (mass-spring-system)

ortho

manipulation

orthographic rendering

part_color

particle system

defines color of particles

part_damp

particle system

change velocity of particles

part_draw

particle system

draw a particle system

part_follow

particle system

particle follow each other

part_gravity

particle system

sets the gravity-vector of the particle system

part_head

particle system

starts a particle system

part_info

particle system

gives all available information of all the particles in the system

part_killold

particle system

kill all particles which are older than the kill time

part_killslow

particle system

kill all particles which are slower than the kill speed

part_orbitpoint

particle system

make the particles orbit about the postion x,y,z

part_render

particle system

draw a particle system

part_sink

particle system

sets up a sink for the particles within the system

part_size

particle system

change size of the particles

part_source

particle system

add a particle source

part_targetcolor

particle system

change the color of the particles

part_targetsize

particle system

change the size of the particles

part_velcone

particle system

sets a cone to be the velocity-domain of new particles

part_velocity

particle system

sets velocity of new particles

part_velsphere

particle system

sets a sphere to be the velocity-domain of new particles

part_vertex

particle system

add a particle at the specified outset

pix_2grey

pix

converts a pix to greyscale

pix_a_2grey

pix

converts a pix to greyscale based on alpha

pix_add

pix image

add 2 images

pix_aging

pix

apply a super8-like aging effect

pix_alpha

pix

set the alpha values of an RGBA-pix

pix_background

pix

separate an object from a background

pix_backlight

pix

blacklighting effect

pix_biquad pix_movement pix_tIIR

pix timebased effect

timebased IIR filter

pix_bitmask

pix

mask out pixels

pix_blob

pix

get the „center of gravity“ of an image

pix_blur

pix

deprecated, use pix_motionblur

pix_buffer

pix

storage place for a number of images

pix_buffer_read pix_buffer_write

pix

read / write images to a pix_buffer

pix_buf

pix

buffer a pix

pix_chroma_key

pix mix

mix 2 images based on their color

pix_clearblock

pix

clear an image without destroying the picture

pix_coloralpha

pix

calculate the alpha-channels from the RGB data

pix_colormatrix

pix

transform the pixel values by a matrix

pix_color

pix

set the color-channels of an image

pix_colorreduce

pix

reduce the number of color in the image

pix_compare

pix

mix 2 images based on their luminance

pix_composite

pix mix

alpha-blend 2 images

pix_contrast

pix

change contrast and saturation of an image

pix_convert

pix

convert the colorspace of an image

pix_convolve

pix

apply a convolution kernel

pix_coordinate

pix

set the texture coordinates for a pix

pix_crop

pix

get a subimage of an image

pix_curve

pix

apply color curves to an image

pix_data

pix

get pixel data from an image

pix_deinterlace

pix

deinterlace an image

pix_delay

pix timebased effect

delay a series of images

pix_diff

pix mix

get the difference between 2 pixes

pix_dot

pix

make dotty images

pix_draw

pix

draw pixels on the screen

pix_dump

pix

dump all the pixel data of an image

pix_duotone

pix

reduce the number of colors by thresholding

pix_fiducialtrack

pix analysis

fiducial [targe] detector and tracker

pix_film

pix source

load in a movie file

pix_flip

pix

flips the image along an axis

pix_freeframe

pix

run a FreeFrame object

pix_gain

pix

multiply pixel values

pix_grey

pix

convert the colorspace of an image into grey

pix_halftone

pix fx

make halftone patterns

pix_histo

pix

excerpt histograms of an image

pix_hsv2rgb pix_rgb2hsv

pix

convert between RGB and HSV

pix_imageInPlace

pix source

loads multiple image files

pix_image

pix source

loads an image file

pix_indycam

pix

create pixes from an SGI video camera

pix_info

pix

pix_invert

pix

invert an image

pix_kaleidoscope

pix

kaleidoscope effect

pix_levels

pix

level adjustment

pix_lumaoffset

pix

offset pixels depending on the luminance

pix_mask

pix mix

mask out a pix

pix_mean_color

pix

get the mean color of the current image

pix_metaimage

pix

display a pix by itself

pix_mix

pix

mix 2 images based on mixing factors

pix_motionblur

pix timebased effect

apply motionbluring on a series of images

pix_movement2

pix timebased effect

timebased IIR filter for motion detection

pix_movie

pix source

load in a movie file

pix_multiblob

pix analysis

blob detector for multiple blobs

pix_multiimage

pix source

loads multiple image files

pix_multiply

pix mix

multiply 2 images

pix_normalize

pix

normalize an images

pix_offset

pix

add an offset to the color

pix_pix2sig~ pix_sig2pix~

pix

convert images <-> signals

pix_posterize

pix

posterialization effect

pix_puzzle

pix

shuffle an image

pix_rds

pix

random dot stereogram for luminance

pix_record

pix output

write a sequence of pixes to a movie file

pix_rectangle

pix

draw a rectangle into a pix

pix_refraction

pix

display a pix through glass bricks

pix_resize

pix

resize an image

pix_rgba

pix

convert the colorspace of an image to RGBA

pix_roll

pix

(sc)roll through an image

pix_rtx

pix timebased effect

Realtime vs. X tranformation

pix_scanline

pix

scan lines of an image

pix_set

pix

set the pixel data of an image

pix_share_read pix_share_write

pix

read / write pixels from a shared memory region

pix_snap2tex

pix

take a screenshot and texture it

pix_snap

pix

snap a pix of the frame buffer

pix_subtract

pix mix

subtract 2 images

pix_takealpha

pix mix

transfer the alpha channel

pix_texture

pix

apply texture mapping

pix_threshold_bernsen

pix

apply dynamic thresholds to pixes for binarization

pix_threshold

pix

apply a threshold to pixes

pix_videoDS

pix source

live video capture with VideoShow (windows only)

pix_video

pix source

open a camera and get input

pix_write

pix

make a snapshot of the frame buffer and write it to a file

pix_yuv

pix

convert the colorspace of an image to YUV

pix_zoom

pix

zoom the pixels

polygon

geometric

renders a polygon

polygon_smooth

manipulation

turn on / off polygon smoothing

pqtorusknots

geometric

renders a 3d knot

primTri

geometric

renders a triangle with gradient colors

rectangle

geometric

renders a rectangle

render_trigger

control

triggers on rendering

ripple rubber

geometric

renders and distorts a square

rotate rotateXYZ

manipulation

rotation

scale scaleXYZ

manipulation

scale

scopeXYZ~

geometric DSP

3d oscilloscope

separator

manipulation

shearXY shearXZ shearYX shearYZ shearZX shearZY

manipulation

shear

shininess

manipulation

shininess of the material

slideSquares

geometric

renders sliding squares

specular specularRGB

manipulation

specular coloring

sphere

geometric

renders a sphere

spot_light

non-geometric

adds a spot light to the scene

square

geometric

renders a square

teapot

geometric

renders a teapot

text2d text3d textextruded textoutline

geometric

renders a line of text

torus

geometric

renders a torus

translate translateXYZ

manipulation

translation

triangle

geometric

renders an equilateral triangle

tube

geometric

renders a complex tube

vertex_program

shader

set the ARB vertex shader

 

Name

Library/Path

Function

PDP

Extended Objects

pdp_affine

pdp_agc

automatic gain control

pdp_blur_hor

horizontal blur effect

pdp_blur

blur effect

pdp_blur_ver

vertical blur effect

pdp_cheby3o

pdp_contrast

contrast enhancement

pdp_conv_alledge

all edge sensitive convolution filter

pdp_conv_emboss

emboss effect

pdp_conv_smooth

averaging convolution filter

pdp_conv_sobel_edge

sobel edge detector

pdp_conv_sobel_hor

vertical sobel edge detector

pdp_conv_sobel_ver

horizontal sobel edge detector

pdp_diff

difference between current and previous frame

pdp_dither

dither effect

pdp_gain3

independent gain for 3 channels

pdp_gradient

gradient

pdp_grey

pdp_invert

pdp_m_inverse

matrix inverse

pdp_motion_blur

motion blur effect

pdp_motion_fade

motion triggered fade-out effect

pdp_motion_phase

motion phase shift effect

pdp_offset

add an offset to an image

pdp

pdp_phase_hor

horizontal phase shift effect

pdp_phase

phase shift effect

pdp_phase_ver

vertical phase shift effect

pdp_png_to

load + convert a png file

pdp_pps

measure number of packets per second

pdp_qt_control

pdp_qtloop2~

pdp_qtloop~

pdp_saturation

adjust colour saturation

pdp_save_png_sequence

saves a png sequence

pdp_sub

pdp_tag

tag a pdp message

pdp_xv_keycursor

keyboard/mouse controller

 

Name

Library/Path

Function

Physical Modelling

Extended Objects

iAmbient2D iAmbient3D

flatspace

ambient interaction – interaction between a collection of masses and a commun environment

iCircle2D iCircle3D

flatspace

circle interaction – interaction between a collection of masses and a circle

iCylinder3D

flatspace

cylinder interaction – interaction between a collection of masses and a cylinder

iLine2D

flatspace

line interaction – interaction between a collection of masses and a line

iPlane3D

flatspace

plane interaction – interaction between a collection of masses and a plane

iSeg2D

flatspace

segment interaction – interaction between a collection of masses and a segment

iSphere3D

flatspace

sphere interaction – interaction between a collection of masses and a sphere

link link2D link3D

flatspace

link between 2 masses

mass mass2D mass3D

flatspace

get liaison forces and output position

tCircle2D tCircle3D tCube3D tCylinder3D tLine2D tSeg2D tSquate2D

flatspace

test masse position

tLink2D tLink3D

flatspace

get position of masses, output forces

tPlane3D

flatspace

test interaction between mass and plane

tSphere3D

flatspace

test if a sphere is inside a mass

 

Name

Library/Path

Function

Obsolete

Vanilla Objects

scope~

use tabwrite~ now

namecanvas

attach this canvas to a name

template

use struct now

scalar

draw a scalar on parent

Extended Objects

post_netreceive

flatspace iemlib

convert message lists with a prepended float index

gemorb

Gem

respond to events of a SpaceOrb

gemtablet

Gem

respond to events of a graph-tablet