The lab exercises provided here are not required for the course. They are designed to complement each course lecture and to perhaps help in getting started with the corresponding homework assignment for the week. Ideally, the instructor will leave some time at the end of each lecture to allow students to work on the lab exercises in class with the instructor present. However, students can also work on the lab exercises outside of class and query the instructor or TA if they have questions.
Lab #6
3 October 2025
Create numerator and denominator coefficient vectors for feedforward and feedback comb filters in Matlab and view their frequency response using the freqz function.
y[n] = x[n] + 0.95 x[n-7] (feedforward comb)
y[n] = x[n] - 0.95 y[n-7] (feedback comb)
Create a unit impulse signal and use it as input to a Schroeder allpass filter with g = 0.7 and a delay of 357 samples. Then use the output of that filter as input to a feedback comb filter specified by the difference equation y[n] = x[n] - 0.95 y[n-1037]. Plot the resulting impulse response and the corresponding magnitude frequency response.
Lab #5
26 September 2025
Experiment with the phaser.m Matlab script and try adding one or more notches to it.
Open the Pd chorus effect patch and experiment with different parameters.
Lab #4
19 September 2025
Use Matlab to define and plot the frequency response (using freqz) of the following digital filters.
y[n] = x[n] + x[n-1]
y[n] = x[n] - x[n-1]
y[n] = x[n] + 0.9 y[n-1]
y[n] = x[n] - 0.9 y[n-1]
y[n] = x[n] + x[n-10]
y[n] = x[n] + y[n-10]
In Pd, try using a few filter objects (such as lop~ or lowshelf~) with a noise~ input signal and viewing the result with the spectrograph~ object.
Lab #3
12 September 2025
In Matlab, create a multi-harmonic sinusoidal wavetable and use it to produce sounds at different frequencies and durations. Experiment with different amplitude scalings on the different harmonics.
In Pd, try using the tabosc4~ object with the "sumsine" helper method.
Lab #2
5 September 2025
Download and start Matlab. Practice using the help command with some of the functions demonstrated during the class lecture.
Load a soundfile into Matlab (see the audioread function). Play the sound using the sound or soundsc functions. View the sound power spectrum using the spectrogram function (for example, spectrogram( y, 1024, 'yaxis' ) assuming the signal is found in variable y).
Using Matlab, create a sinusoidal signal and practice calculating its signal metrics.
Lab #1
29 August 2025
Download plug data. Go to "Settings->Audio" to see how to select/enable audio input and output devices and to verify they are recognized.
Open a patch from the course notes and become familiar with toggling audio processing on/off, as well as switching between edit and run modes and adding new objects to a patch.
If you do not have prior experience using Pd, read through the early parts of the Pure Data Manual.
Download VMPK and verify it works. Then open the "Edit->MIDI Connections" panel to see how to specify connections to the DLS synthesizer or control virtual MIDI input/output sources/destinations.
Open a Pd MIDI patch from the course notes in plugdata and verify you can send/receive MIDI messages to/from VMPK.