|
A. What is PD (text + icons) Pure Data (or PD) is a real-time graphical programming environment for audio, video, and graphical processing. The core of Pd is written and maintained by Miller S. Puckette (http://crca.ucsd.edu/~msp/) and includes the work of many developers (http://www.puredata.org/), making the whole package very much a community effort. PD runs on Linux, Windows and Mac OS X, and there is a wide range of external libraries available which give PD additional features. B. What is real-time graphical programming? Traditionally, computer programmers used text-based programming languages to write applications. The programmer would write lines of code into a file, and then run it afterwards to see the results. While this way of programming is very efficient for skilled programmers, many sound or visual artists as well as other non-programmers find this a difficult and non-intuitive method of creating things. Pure Data, on the other hand, is a graphical programming environment. What this means is that the lines of code which describes the functions of a program and how they interact have been replaced with visual objects which can be manipulated on-screen. Users of Pure Data can create new programs (called "patches") by placing functions (called "objects") on the screen. They can change the way these objects behave by sending them "messages" and by connecting them together in different ways by drawing lines between them. This visual metaphor borrows much from the history of 20th Century electronic music, where sounds were created and transformed by small electronic devices which were connected together via "patch cables". The sounds that were heard were the result of the types of devices the composer used and the way in which she or he connected them together just as much as in the way that the performer played them on a keyboard. Nowadays, much of this electronic hardware has been replaced by computer software capable of making the same sounds, and many more. <icons of modular synth with patch cables?> The real advantage of Pure Data is that it works in "real-time". That means that changes can be made in the program even as it is running, and the user can see or hear the results immediately. This makes it a powerful tool for artists who would like to make sound or video in a live performance situation. The other thing that makes Pure Data extremely powerful is that it treats everything that enters it as data. What this means is that images and sounds, as well as input from sensors, keyboards, joysticks, microphones, cameras or the internet, are all represented by numbers inside PD. So the numbers that represent a sound that is playing, for example, could be used to adjust the numbers that represent the colors an image, which is then seen on the screen as video. Images could be analyzed to make changes in sounds as well. And either sound, image or data could be used to control a device outside the computer, such as a motor, light or robot. <good place for an icon-based flowchart of this!!!> The core of Pure Data was written by Miller S. Puckette to handle two types of information: data and audio. The community of users and programmers around PD then started to create additional functions (called "externals" or "external libraries") which are used for a wide variety of other purposes, such as video processing, the playback and streaming of MP3s or Quicktime video, the manipulation and display of 3-dimensional objects and the modeling of virtual physical objects. <another icon-set showing the relation of PD to externals?> This manual will concern itself with installation, configuration and use of the core Pure Data application to process data and sound. Later chapters can then be added discuss the installation of external libraries and their use, as well as the interrelation of sonic and visual information. |