Inspiration
The world is missing a browser-based trumpet.
What it does
Simulates the proudest instrument of the brass family in an impressively realistic way. Now you too can impress and amaze your friends and enjealousify your enemies as you toot a jaunty tune on your virtual horn.
How I built it
This is built with clojurescript in general and the the react-wrapper library re-frame to handle events and draw the dom. I use the hum library, a clojurescript wrapper for the new-ish Web Audio API to produce a tone.
Challenges I ran into
Getting the valve presses and buzz intensity slider to work together with the web audio oscillator in a performant way turned out to be problematic. The whole interface is laggier than I would like.
Accomplishments that I'm proud of
I like how the key press animations look! They are full of zip.
What I learned
I learned about equal temperament and how to produce tones that are in sync with a starting tone (A @ 440).
What's next for trumpet
Rock band for virtual trumpet! I'd like to add scrolling note-markers play that requires the user to keep time and play a cool song! Also, the ability to save and play back performances.
Log in or sign up for Devpost to join the conversation.