Pure Data Seminar

Pure Data is a real-time graphical programming environment for audio, video, and graphical processing. The seminar begins with an introduction to the Pure Data environment and Miller Puckette’s book, The Theory and Techniques of Electronic Music. Throughout the seminar we will augment our knowledge with individual projects and special topics presented by seminar members. PD is free and open-source – please bring your own machine with the software installed – it is available for Linux, OS X, and Windows at the Pure Data web portal.


Week 1
Introduction to the Pure Data environment, discussion of seminar objectives. Brief discussion of the missing fundamental phenomenon; illustration of the phenomenon in a Pure Data patch.

Homework:
Chapter 1(Sinusoids, Amplitude and Frequency) of The Theory and Techniques of Electronic Music (PDF).
Example patches available here.

Additional Pure Data documentation available here.
Seminar members are asked to create a small patch to discuss with the group in week 2.

Next meeting: Wednesday, August 15 at 8pm.

Week 2
Discussed principles of amplitude and frequency and the homework assignments. Discussed rudimentary frequency modulation possibilities - reviewed the technique of using one low frequency oscillator to modulate a property (amplitude) of another oscillator; realization that high frequency modulation leads to tone production. Introduced wavetable synthesis.

Homework:
Chapter 2(Wavetables and Samplers) of The Theory and Techniques of Electronic Music (PDF).
Students are asked to create a patch based on the techniques discussed in this chapter, for review with the group at the next meeting.

Next meeting: Thursday, August 23 at 8pm.

Week 3
Discussed the first half of the Wavetables and Samplers chapter; covered wavetable synthesis with custom oscillators in puredata, as well as transposition functions. Discussed looping samplers and granular synthesis; next week will continue with the second half of the chapter - further investigation into samplers, timbre stretching, and interpolation.

Homework:
Second half of Chapter 2(Wavetables and Samplers) in The Theory and Techniques of Electronic Music (PDF).
Students are asked to create a patch involving sampling; full scale software sampling is not necessary.

Next meeting: Wednesday, August 29 at 8pm.

Week 4
Discussed the second half of the Wavetables and Samplers chapter: timbre stretching and interpolation. Reviewed a patch creating a simple looping sampler; showed how to use the output of the soundfiler object to resize a wavetable into which a sample is read.

Homework:
First half of Chapter 3(Audio and control computations) in The Theory and Techniques of Electronic Music (PDF).
Students are asked to create a patch involving sampling or related to the control concepts learned in the chapter.

Next meeting: Wednesday, September 5 at 8pm.

Week 4 - Assets
Week 5
Discussed the first half of the Audio and Control Computations chapter. Reviewed Brandon Joyce's patch for selective incremental playback of a sound file; the file is played back repeatedly in pieces which grow incrementally until it is played back in its entirety. Possible application: an experiment determining how little of a word, phrase, sentence, piece of music, or other piece of audio must be heard before it is recognizable. Experiment with music heard in childhood vs. music heard in adulthood, etc.

Homework:
Second half of Chapter 3(Audio and control computations) in The Theory and Techniques of Electronic Music (PDF).
Students are asked to create a patch for review with the group.

Next meeting: Wednesday, September 12 at 8pm.

Week 6
Discussed the rest of the Audio and Control Computations chapter. Reviewed Ramsey's sampling patch, Chris & Isaac's multiple tone generator patch.

Homework:
Read Chapter 4(Automation and voice management) in The Theory and Techniques of Electronic Music (PDF).
Students are asked to create a patch for review with the group.

Next meeting: Thursday, September 20 at 8pm.

Week 7
Discussed Chapter 4(Automation and voice management) in Theories and Techniques of Electronic Music. Reviewed a demonstrative patch by Ramsey covering signal summing and encapsulation; further review of Chris & Isaac's tone generator.

Homework:
Read Chapter 5(Modulation) in The Theory and Techniques of Electronic Music (PDF).
Students are asked to create a patch for review with the group.

Next meeting: Thursday, September 27th at 8pm.

Week 7 - Assets
Week 8
Discussed Chapter 5, Modulations. Reviewed Izaak's waveshaping patch - a method, using bandpass filters, of isolating complex, musical tones from white noise (tapping on contact mic). Reviewed Ramsey's patch for basic generative music.
No class on Thursday, October 11. Next class will be on the 18th.
Week 9
After a brief hiatus, met again and discussed Chapter 6, as well as VST prototyping, final project generation, and Isaac's filter synthesizer. Next we will continue with Chapter 7, continue to discuss the final project possibilities and software engineering principles, and design delays.

Homework:
Chapter 7, patch generation, preferably dealing with delays.

Next meeting: Thursday, November 8th at 8pm.

Week 10
Discussed complex numbers and the beginning of Chapter 7, drum sequencer planning, as well as Izaak's new delay patch, and a small example patch exhibiting delay usage. Next we will continue with Chapter 7, and examine our first implementations of a drum sequencer.

Homework:
Chapter 7, and a patch implementing some of the ideas we talked about for our drum sequencer.

Next meeting: Thursday, November 15th at 8pm.

Week 10 - Assets
  • delay-example.pd - Simple example of a delay with feedback, and a variable delay time.
  • multiosc-v1.zip - Multi oscillator mixer with delay and reverb by Izaak; requires "freeverb" (included in pd-extended) for reverb to work properly.
Semester Close
With a brief introduction to video synthesis in Pure Data using GEM and PDP (both available in the Pure Data extended package), the seminar has come to an end. The next semester will focus on video synthesis and the physical interface for patches, with a focus on GridFlow and working with USB/MIDI/WiiMote solutions.
Departmental Associations
Project Members