Category Archives: Software

Graffiti

(sub)Urban Projections Film Festival wanted to include live projection bombing in downtown Eugene, OR, and I was commissioned to create an interactive installation that allows a user to paint graffiti upon any projected surface. The human interface uses TouchOSC on an iPad or iPhone, which drives my graffiti computer software. The work was presented each night of the (sub)Urban Projections festival: Nov. 9, 16, 23; 2011, the WhiteBox gallery in Portland, OR Dec. 10, 2011, and the second (sub)Urban Projections festival: Nov. 7, 11, 14 2012.

Kinect-Via- Interface Series

Kinect-Via- is a Max/MSP interface series for composers wanting to route and map user-tracking data from the XBox Kinect. The interface series complements four different OpenNI applications, namely OSCeleton, Synapse, Processing’s simple-openni library, and Delicode’s NIMate. All Max/MSP interfaces communicate using OSC (Open Sound Control) messages and are performance-ready, meaning that all routing and system options may be changed in real time. The Kinect-Via- interfaces offer a tangible solution for anyone wishing to explore user tracking with the Kinect for creative application. The interface currently has over 1000 downloads globally. Note: Tested with Max 5 and OSX 10.6.8.

White paper (.pdf)

Kinect-Via-OSCeleton. (.zip)
OSCeleton application

Kinect-Via-Synapse. (.zip)
Synapse application

Kinect-Via-Processing. (.zip)
Processing library

Kinect-Via-NIMate. (.zip)
NImate application

Projects utilizing Kinect-Via-

Human Chimes. Human Chimes is an interactive public installation. Participating users become triggered sounds that interact with all other participating users inside the space. The Kinect mapping is using Kinect-Via-OSCeleton.

The Beat. The Kinect user’s hand and head movements mapped to filters, and at times, hand gestures actuate sound. The Kinect mapping is using Kinect-Via-Synapse. “The Beat” is a composition by Nathan Asman.

Juggling Music (Arthur Wagenaar). Playing music by juggling with glowballs! Demonstration of this new self made musical instrument, controlled by juggling. Also known (in Dutch) as ‘De Kleurwerper’.

Sonic Dog Tags

Sonic Dog Tags is a set of compositions I composed using programs written in Python, Max/MSP/Jitter, and Processing. My programs retrieve biographical information of fallen service members from the Department of Defense RSS feed, map the information to musical parameters, and draw complementary visual sketches, collectively forming compositions unique to each service member.

Download source code examples.

The above video explains the compostional process. For videos/compositions of the individual service members, please click on the links below.

Tramaine J. Billingsley, Carlos A. Benitez, Rafael Martinez Jr.

Jessica Ellis

Jarod Newlove

Max/MSP/Jitter Abstractions

Below are just some of the documented resources I’ve made for Max/MSP. Hopefully these Max abstractions help save you time within this wonderful programming environment.

Jitter matrix grid – creates a grid of any size columns and rows (stored inside a coll) for controlling a Jitter matrix.

Tempo Control – interface for controlling tempo in Max. User can control tempo with bpm or millisecond. Includes a tap tempo.

drop folder – dropping a folder of files will automatically place files into a umenu object. Great for buffer/groove objects.

for loop – performs an arithmetic ‘for loop’ in Max/MSP. Sometimes line programming can be much easier than graphical.

data as table – displays data in a table as it is received, so you can graphically see the values of incoming data over the course of time.

MIDI Drum umenu – standard channel 10 MIDI drums list saved conveniently into a umenu (culled from Apple’s basic MIDI synthesizer)

MIDI Control – modular design for controlling MIDI volume, program changes, and makenote in Max. Each function is inside its own patcher object.

toggle message – toggles input of any message (number, message, bang) between two outputs.

modulo bang – user controls up/down integer count with modulo control when only bangs are available.