WebAudio Theremin

Click to play, move mouse to change pitch/volume. Pitch is horizontal, volume is vertical.

You can also hover over and press a key.

Behavior is different depending on browser. Try in Chrome.

0 hz
0 %

Pan Flute
Choir Aahs
Electric Guitar


javascript-converted soundfonts from https://github.com/gleitz/midi-js-soundfonts

Using HTML5 Web Audio API... loads sounds from base64 MP3 blob, controls pitch with detune (which stretches the audio length, too) and volume with gain node.

Save page to modify. All the JS is there. Can add in own converted samples and tweak start/end times for a nice hold loop. (Dunno how to convert them to base64/mp3, but it's probably pretty easy...)

I'm looking for ways to synthesize sound from a function of time,pitch,volume; so I don't have to bother with any of this pitch-bending vocoder nonsense. I'm trying to get some nice sounds for real-time pitch bend. For instance, you might have noticed that with some of the samples here, they end softer than they start, so the volume parameter is necessary to make long notes work. Also, specifically with a mouse, it's a little hard to click fast enough to play well...

This concept can also be done through any MIDI sythesizer that can handle real-time pitch-bends and can set a wide pitch bend range (this setting is specific to each device).