Course Outline (fall, 2000)
Audio Concepts (Roads, Chap 1)
00/09/12: Digital recording and mixer
00/09/21: Csound, Introduction
to Digital Sound Synthesis (Roads, Chap. 3)
00/09/24: AM, RM
00/09/26: Additive Syntheis, SuperCollider
tutorial on DFT(FFTW) (Numerical
Recipes in C)
00/10/17: Mid-term holiday
00/10/19: Fourier Series
00/10/26: No class
00/10/31: No class
00/11/02: Mid-term exam
00/11/09: Digital filters I
00/11/14: Digital filters II
00/11/21: Zeros and poles
00/11/23: Thanksgiving break
00/11/28: Noise, Karplus-Strong
00/11/30: Linear Predictive Coding
00/12/05: Phase Vocoder
00/12/07: Formants, FOF, VOSIM, Granular Synthesis
00/12/12: Comb and allpas filters, reverb, flange
00/12/14: Panning, doppler, and audio compression
- DSP Tutor
Final project (Due 00/12/19, 11:59pm)
Write a program that perform phase vocoder in realtime. Use Moorer's algorithm and compare
with a version using FFTw.
Assignment #6 (Due 00/11/21, 2:30pm)
Write two versions of convolution: straight and FFT. Compare the results.
Assignment #5 (Due 00/11/07, 2:30pm)
Implement a DFT and an FFT program based on Moore (p.66 and p.88).
Use his test programs to make sure they are working. Also test with the
following input source with different lengths. Show results.
- band-limited square wave
- pure square wave
Assignment #4 (Due 00/10/03, 2:30pm)
Using pd or MSP, write a patch for general FM synthesis.
Also, using Chowning's data, make the following FM instruments: brass-like,
woodwind-like, bell-like, wooden-drum, and soprano
sounds. The information can
found in Dodge & Jerse book.
Assignment #3 (Due 00/10/03, 2:30pm)
Using Csound, reproduce as accurately as possible, the following vibraphone
Use additive or FM synthesis to simulate the vibraphone sound. The motor
should start up slowly. Note also that the B-flat is dampened by a
Assignment #2 (Due 00/09/26, 2:30pm)
Write a program to calculate the signal-to-noise levels of table
lookup methods for different table sizes. Compare truncation, rounding,
and linear interpolation. Compare execution times with
sin() function. Show the effect of compiler optimization levels.
Assignment #1 (Due 00/09/19, :302pm)
Write a program to show empirically the quantization error of
conversion. List the signal-to-noise levels of 1-bit to 32-bit
- Write a prototype of audio server that plays an AIFF file and/or
Download and evaluate Linux-based software synthesizers, e.g:
Download and evaluate Linux-based audio editors, e.g: