Control a synthesizer by whistling. Optimized for responsiveness,
with 1-2ms latency.
Example:
A natural question would be, why not use existing pitch-shifting
software? I experimented with several different products, and
couldn't find one that was sufficiently low-latency. I decided to
write my own software optimized specifically for whistling. This
allows us to take advantage of ways that whistling is unusual (nearly
a pure sine wave, very high pitched) to make something that recognizes
it and processes it very quickly (
more,
more). This also allows
synthesizing other voices, instead of pure pitch shifting.
The version that's most up to date is in C (github) and
runs on a Raspberry Pi. I also have
a version that runs in the browser if you want to try it out quickly,
but latency can be high depending on your platform: whistle synth in the browser.
Blog posts: