What it is?
This is a synthesizer that I originally made during a Stanford summer workshop at CCRMA. It’s midi controllable, and is capable of 4-note polyphony. The way you use it is by drawing an arbitrary waveform on the LCD with your finger or a pen. There’s no delay between the drawing and synthesizing. You can even draw the waveform while you’re playing the midi controller.

The boring details
To get this to work I had to use a few tricks. The first hurdle was that when you draw on the screen, most of the pixels on the screen aren’t updated (depending on how fast you draw). To solve this, I erased pixels in front of where the pen was moving and added rainbow chunky pixels on the screen t make it more fun. With all the gaps in between pixels, I created a simple interpolation algorithm that would fill in samples in between the pixels recorded.
To get the synth midi-controllable, I created a pitch shifting algorithm that skips recorded samples by some fraction (for example, playing ever other sample on the screen pitches the note up an octave). I then added multiple synthesizer midi inputs to get polyphony.

What is a waveform?
Sound is our ears picking up vibrations in air caused by an acoustic source. If we graph these vibrations we get a waveform, which is a visualization of the sound we hear. This synthesizer works by allowing the musician to draw any arbitrary waveform we hear as sound.
