## Pd Documentation chapter 1: introduction

back to table of contents

This is the HTML documentation for the Pd computer program. Pd is free and can be downloaded from the internet; go to http://www.crca.ucsd.edu/~msp/software.html to get it.

### 1.1. guide to the documentation

Pd's documentation consists of:

- this HTML manual
- "reference" patches, one for each kind of object in Pd
- "example" patches showing how to do things
- sample C code

This manual has five sections:

1. this overview
2. a theory of operations, explaining how Pd works
3. instructions on installing Pd and getting it to run
4. how to write C extensions to Pd
5. release notes and known bugs

In order to consult the reference and example patches, you'll first have to get Pd started as explained in this manual.

For a list of all the objects you can use in Pd, see the text file, "0.INTRO.txt" in the directory, "../5.reference". To get help on any Pd object you can right click on it; or you can browse the help patches by choosing "Pure Documentation..." in the Pd help menu and looking in 5.reference.

The example patches are also available from the "Pure Documentation..." item in Pd's "help" menu. The example patches appear in subdirectories named "2.control.examples", "3.audio.examples" and "4.fft.examples." Some additional patches in "7.stuff" might also be helpful.

To get started writing your own C extensions, refer to chapter 4 of this manual.

### 1.2. other resources

There is a new Pd community web site, pure-data.info, which aims to be the central resource for Pd, from documentation and downloads; to forums, member pages, a patch exchange.

There is a growing number of Pd-related projects hosted at SourceForge. This is open to all Pd developers, and all are encouraged to join; send an email to the pd-dev list (see below).

Most of the interesting resources related to Pd show up on the Pd mailing list, maintained by Iohannes Zmoelnig. To subscribe or browse the archives visit: http://iem.kug.ac.at/mailinglists/pd-list/. . This is the best source of recent information regarding installation problems and bugs. It is perfectly reasonable to post "newbie" questions on this list; alternatively you can contact msp@ucsd.edu for help.

Many extensions to Pd are announced on the mailing list. In particular, for people interested in graphics, there is a A 3D graphics rendering package, named GEM, based on OpenGL, written by Mark Danks, adapted to Linux by Guenter Geiger, and now maintained by Iohannes Zmoelnig. GEM runs on Windows and Linux and probably will run with some coaxing on IRIX. You can get it from: http://iem.kug.ac.at/GEM .

At least three video processing packages are available for Pd. The oldest is Framestein, by Juha Vehvilainen. This runs on Windows only: http://framestein.org . The newer PDP library, by Tom Schouten, and its extension PiDiP by Yves Degoyon, run well in linux and have been ported to Windows and MacOS. Mathieu Bouchard has written Gridflow , which runs on linux and MacOSX. The mathematical operators are more powerful than in PDP, and the design makes smarter use of cache behavior in modern CPUs.

the Pd extended package, maintained by Hans-Christof Steiner, can be downloaded from the Pd's sourceforge site . All this and much more is described in detail on http://puredata.info/.

Here are some more Pd links (in the order I found them):
Miller Puckette's home page
Guenter Geiger's home page
Mark Dank's home page
Johannes M Zmoelnig
Krzysztof Czaja's MIDI file support
David Sabine's Pd Documentation Project: new, highly detailed help windows
Fernando Pablo Lopez's augmented Pd RPMs from Planet CCRMA
Cyclone - Krzysztof Czaja's Max compatibility library
On-line book: Theory and Techniques of Electronic Music