(we are) electronic performers

PureData. Numbercrunching for musicians.

To give a quick demonstration on how to create a more collaborative performance environment, we used a rather chaotic setup. Over the coming weeks and months, we will not only open source the stuff we built to do it, but also will try to improve on it, make the setup more modular and flexible, so that musicians can use it both as a tool to spread the idea, but also as a means of creating their own interactive performances in a more easy and abstracted way.

The next few posts will introduce you to the underlying technologies. The most important technology used in the setup (Softwarewise) is PureData.

PureData is the third incarnation of an idea born in the head of Miller Puckette who currently teaches Computer Music at the UCSD (San Diego). The two earlier incarnations are Max/MSP (Developed as Commercial Software by Cycling74), which still is kind of an industry standard, and jMax, a Java based clone of Max, a project that recently got revived after a few years of relative quietness.

Pure data, on its homepage, is described as a “real-time graphical programming environment for audio, video, and graphical processing”. But what does that mean? First of all, programming really is done in a graphical way, which means that while PureData has a very steep learning curve, at least you don’t have to be a coder to understand PureData patches.

In it’s core, PureData is about signal flows, or, put differently, manipulation (processing) of streams of data. Let’s leave out the “video and graphical processing” part for a minute and ask what “data streams” might be in an audio context. One kind of data stream is digital sound - You can use PureData to sample sounds, manipulate them and output them again. Other forms of data streams could be streams of note data, or even completely arbitrary controller data. One of the beauties of PureData are the many many ways in which you can actually feed data streams into PureData and the many ways in which you can output them again. This makes PureData the ideal playground for people experimenting with unusual forms of musical interaction. Simply put: If your computer eats the data, PureData will, too.

But PureData can also generate data. It contains simple function generators and oscillators so that you can actually build your own software synthesizer with it. And since it contains a lot of very low level manipulation tools, you can also do all kinds of weird stuff with it that would make people like Aphex Twin and Autechre perfectly happy.

In our setup, we use PureData both as a processing tool (transforming incoming data streams from external sources like sensors into something meaningful) and a software synthesis tool. In it’s current form, the only software used in the demo setup is PureData and a rather complex and chaotic patch.

I’ll walk you through interesting details of our PD setup throughout the next articles.


To Tumblr, Love Metalab