## 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 href="http://zwizwa.fartit.com/pd/pdp/overview.html"> PDP library, by Tom Schouten, and its extension PiDiP by Yves Degoyon, run well in linux and has been ported to Windows and MacOS. Video is extremely fast in PDP, but is currently limited to 240x320 resolution.

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. All this and much more is described in detail at the first Pd Convention .

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
Pd page on Wonk (Klaus)
Johannes M Zmoelnig
Norbert Math's Pd page
Nicolas Lhommet's WikiWikiWeb page for Pd
Norbert's searchable list of all known Pd objects
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 project: Theory and Techniques of Electronic Music