In the Service of Electro-Acoustic Music:
Digital Signal Processing + Software Design/Implementation Techniques

Graduate Seminar | Fall 2006
MW 3:00-5:00 PM
Instructor: Ge Wang
Hallgarten Hall
Dartmouth College, Electro-Acoustic Music Program
Seminar mailing list | archive

Texts:

  • P. Cook. Real Sound Synthesis for Interactive Applications. A.K. Peters, 2004.
  • K. Steiglitz. A Digital Signal Processing Primer. Addison-Wesley, 1996.

Courses Description:

This course explores computer music synthesis and analysis, from the angles of DSP theory and software design/implementation issues and strategies. We will discuss digital signal processing concepts and their practical applications in sound synthesis. We'll also go over (and practice) important software design principles, and write lots of cool code (e.g. small extensible real-time synthesis engine). Additional emphases include software reuse, real-time systems, and designing interactive software.

Programming will primarily be in C++, with additional uses of MATLAB, Java, and other environments and languages.

A Gamut of Potential Topics:

  • time-domain (buffers, convolution, filtering, envelopes, LPC, resampling, etc.)

  • frequency-domain (windowing, Fourier transform, FFT, modal synthesis, sinusoidal analysis, phase vocoder, etc.)

  • computer music software and systems: design and implementation (c++/java, OOP, design principles, design patterns, real-time audio, interactive systems, data structures and algorithms for sound/music, etc.)

  • implementing classic synthesis algorithms (additive, FM synthesis, LPC, physical modeling, wavetable, vocoders, granular etc.)

  • additional, optional topics (visualization, networking, scheduling, optimizing, wavelets, algorithmic composition, audio feature-extraction, language/system design etc.)

Weekly Supplementary Material:

(to Ge's homepage: dartmouth | princeton)