Lab #10 | 28 March 2017 |

- Read MSP Tutorial #26.
- Try modifying the stfttest.m Matlab script to perform a different type of frequency-domain processing (ex., cross-synthesis).
- Download and test the Matlab phase vocoder example provided by Dan Ellis.

Lab #9 | 21 March 2017 |

- Experiment with the
`modal.m`Matlab script for model synthesis. - Experiment with the
`karplus.m`Matlab script for plucked-string synthesis. - Experiment with the various physical models provided in the STK demo program.

Lab #8 | 14 March 2017 |

- Write a ring modulation patch in ChucK.
- Read MSP Tutorials #9 - 11.

Lab #7 | 7 March 2017 |

- Compile and run the STK tutorial programs.
- Try running some example patches in the miniAudicle.

Lab #6 | 14 February 2017 |

- Read MSP Tutorial #25.
- Load a soundfile into Matlab and try implementing the STFT (computing the fft on blocks of an audio signal), perhaps displaying the result as a waterfall plot.

Lab #5 | 7 February 2017 |

- Implement a bandlimited impulse train in Matlab.
- Read MSP Tutorial #7.

Lab #4 | 31 January 2017 |

- Implement the equivalent of the MSP
`cycle~`object in Matlab. Create a sinewave "table" of length 512 samples (a single period of a sinusoidal function). Then define a variable`rate`that controls the*phase*increment used for the determination of each output sample. The value of`rate`should be calculated from a desired sounding frequency and a specified sample rate, as well as the table size. Experiment with rounding and truncation of the lookup`index`and view the resulting spectra. Implement linear interpolation and compare. - 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 #3 | 24 January 2017 |

- Improve the MSP chorus patch demonstrated in class by adding 1 or 2 extra delayed paths.
- 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)

Lab #2 | 17 January 2017 |

- 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]

Lab #1 | 10 January 2017 |

- Start Matlab and practice using the
*help*command with some of the functions demonstrated during the class lecture. - Load a soundfile into Matlab (see the
`audioread`,`wavread`or`auread`functions). Play the sound using the`sound`function. 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.

©2004-2017 McGill University. All Rights Reserved. Maintained by Gary P. Scavone. |