MSP Lab/Homework Project - Due April 10th

Vector Synthesizer

 

Make an additive synthesis instrument with 4 independently tuned partials (sine waves), whose amplitudes are controlled by the Max x-y controller (joystick). When the joystick is in the center position, all 4 partials (A, B, C, and D) should contribute equally, but when it is fully in a corner, only the partial assigned to that corner should be sounding. When the joystick is positioned anywhere else in the square, a mix of all 4 partials should be sounding, with the individual amplitudes adjusted proportionally. Picture the layout as follows:

If the square is 1 by 1, with x as the horizontal axis and y as the vertical axis, then the formulas for the individual partial amplitudes are:

A = (1-x) * (1-y)

B = (1-x) * y

C = x * (1-y)

D = x * y

Use the pictslider object for your "joystick" and the expr object for the formulas. The basic pitch of the instrument should be controlled by the Max keyboard slider, and the 4 partials adjustable dynamically by the user in floating point number boxes (hint: use bondo). An amplitude envelope is not required, but you should provide an overall level control and a signal level meter.