Pd: Pure Data

Today I want to introduce Pure Data, or Pd, to those who do not know what it is yet. “Pd (aka Pure Data) is a real-time graphical programming environment for audio, video, and graphical processing.”

Pure Data, the graphical audio-processing language

However, I have found that the description from http://puredata.info is pretty darn good, so I’ll simply embellish this introduction with other excerpts, images, and a few personal comments for your viewing pleasure.

“It is the third major branch of the family of patcher programming languages known as Max (Max/FTS, ISPW Max, Max/MSP, jMax, etc.) originally developed by Miller Puckette and company at IRCAM. The core of Pd is written and maintained by Miller Puckette and includes the work of many developers, making the whole package very much a community effort…

Miller with his violin in ’94, as you’ll find at his website.

“I have worked for many years on a computer environment for realizing works of live electronic music, which I named in honor of Max Mathews. Three currently supported computer programs—Max/MSP, Jmax, and Pd—can be considered as extended implementations of a common paradigm I’ll refer to here as “Max.”

“The Max paradigm and its first full implementation were mostly developed over the period 1980-1990, drawing on a wide variety of influences.” Other predecessors or influences include Max Mathews’ RTSKED and Barry Vercoe’s Csound to name a few. You can read the whole story from the author himself and get a much clearer picture here. Miller has joined UCSD’s Music department since 1994, and he is currently the Chairman of UCSD’s Department of Music. Check his background, and you’ll be surprised.

quoted from Puckette’s writing Max at Seventeen *

“…Pd is free software and can be downloaded either as an OS-specific package, source package, or directly from CVS. Pd was written to be multi-platform and therefore is quite portable; versions exist for Win32, IRIX, GNU/Linux, BSD, and MacOS X running on anything from a PocketPC to an old Mac to a brand new PC. Pd can run on smarphones thanks to projects like libpd and RjDj. It is possible to write externals and patches that work with Max/MSP and Pd using flext and cyclone.

My sound_randomizer pd patch, which Miller had graciously complimented on its ability make strange sounds. I’m sure it was only to make me feel loved.

Pd was created to explore ideas of how to further refine the Max paradigm with the core ideas of allowing data to be treated in a more open-ended way and opening it up to applications outside of audio and MIDI, such as graphics and video.

It is easy to extend Pd by writing object classes (“externals”) or patches (“abstractions”). The work of many developers is already available as part of the standard Pd packages and the Pd developer community is increasingly growing. Recent developments include a system of abstractions for building performance environments; a library of objects for physical modeling; and a library of objects for generating and processing video in realtime.”

Looking at this image below, do you find some resemblance to Ableton Live?

In fact, there were rumors that Live was prototyped in Max/MSP. According to Wiki, however, it was not “although Max/MSP was used to model some of the audio devices.”

What?

Nonetheless, what I do know is that Ableton Live 8 includes an integrated Max/MSP platform, in order that if an artist wanted to create an effect using Max/MSP, they can do it in Live 8 relatively easy. This just made Live 8 infinitely better than Avid’s Pro Tools, Apple’s Logic, and Propellerhead’s Reason. Just kidding…

More links for your reading pleasure if you find this fascinating.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s