Author Archives: Kevinernste

Harry Partch’s Instruments, for today

Partch Instruments page

Ambisonics in PureData (PD)

Music 6421 students might wish to be aware of the “ambilib~” tools for PureData including my own implementation of a 3D panner, available in the “Spatialization” folder on the Desktop in Studio A , in the folder “PD_ambipanner”. This includes a simple audio looper/player and a grid-based ambisonic panner. The panner is an abstraction and contains the ambisonic panning and audio output for B27 internally. See the patch itself for more details.

Screen Shot 2015-03-26 at 4.50.10 PM

Additionally, you might look at the HoaLibrary (High Order Ambisonics Library), available for both PD and Max/MSP here. HOA includes a snazzy interface for both platforms. I have installed the HOA libraries on both platforms so they will work fine in the studios (in PD go to “Help–>PD Browser->hoa.library” to see a tutorial). Note the patch “hoa.2d.decoder~” which uses an ambisonic decoder (see patch below)!

Screen Shot 2015-03-26 at 5.32.55 PM


I thought you might be interested in seeing this implementation of a “PD2Live” interface.

…with tutorial videos at the bottom.

This week, Music 2421

This week we will hold our Tuesday meeting session in Lincoln B21, following through on one further thread in the use and capabilities of PD. On Thursday we will break into your small collaborative groups and I will visit each group individually to get an update on progress as well as making myself available for any questions you might have. See you this week! – KE

Basic OSC routing

Here are two quick and simple OSC routing patches using “localhost” (your own computer) as the IP address. Click “connect” and then you can “send” the message. From there, the received data can be sent [s somename] within PD like any other message.

I have included here two methods for doing the same thing:

1. Using [dumpOSC] with [sendOSC], as we have done in class. This includes using [OSCroute] to parse the incoming streams.

OSC simple example using [dumpOSC]

2. Using [udpreceive] and [udpsend], which can be used to share raw UDP data (Note: this method could be used to receive other kinds of UDP data as well, such as that coming from other network devices or software). The caveat with OSC data streams is they must be packaged as OSC data on the way out with [packOSC] and then unpackaged on the receiving end with [unpack OSC]. This allows the use of more standard PD objects to parse the resulting steam since you don’t need an OSC-specific interpreter. In this example, the object “route” is used, which is a generic PD object for routing data. See its help file (right-click on the object and choose “Help”) for more information.

OSC simple example using [udpreceive]

Patch for class



Class patches and examples

Students of Music 2421, here are some patches from our session the other day:

– Wavetable Synthesis (arrays as storage for “sinesum” functions)

Auto-clave (3 to 2 rhythmic ratio…arrays as storage for audio)

Playing Audio Files (tabplay~, phasor~ as array reader, lineplayer~, etc)

A Gig in Tokyo (Hardoff’s fancy, multi-track auto-DJ application…with performance docs)

More “practical data” examples can be found here … and elsewhere on the web …

UPDATE: One more, the “beat slicing” example a played for you. In class I used the Amen break but here there are some other audio files.

Saariaho patches, download

For students of Music 6421, here is the link to download the Saariaho patches for live performance:

– Saariaho Electronics

Note that this link changed very recently and now does contain the audio itself in the Max patches.

Here are the individual pages (including instructions and program notes) for NoaNoa and Pres:

– NoaNoa Electronics

– Près Electronics

These patches can also be found on the Desktop in B27 inside the folder, “Saariaho”.

The patches themselves are modular and will open in several windows, each a subpatch from the main patch shown in the upper left (labeled “NoaNoa” and “Près”, respectively). To start a patch, look to this main window, setting the MIDI input (if you plan to explore the MIDI device controls and the pedal), hit “init” (to reset everything and raise levels for performance), choose a stereo or quad mix (quad seems to lack the reverb, something I need to diagnose), and set pedal polarity (a pedal can be used in conjunction with the blue fader control (Berhringer BCF2000) on the main desk. There is already a pedal installed under the desk for this purpose.




Max at Seventeen: Miller S. Puckette

Here, for your reading enjoyment, is a history of Max (Max/MSP, PD, JMax, etc) by its original author, Miller S. Puckette.

Max at Seventeen

Skip to toolbar