It’s 32 years old. It’s supported by keyboards and electronic wind instruments and lederhosen. And now you can add your browser to the list. MIDI will never die.
Yes, as of more recent beta and stable builds, Google’s Chrome browser has built-in support for hardware MIDI. Plug in a MIDI controller, and you can play – well, this Web Audio MIDI Synthesizer, anyway:
https://webaudiodemos.appspot.com/midi-synth/index.html
Chris Wilso is the author, and describes it thusly:
This application is a analog synthesizer simulation built on the Web Audio API. It is very loosely based on the architecture of a Moog Prodigy synthesizer, although this is a polyphonic synthesizer, and it lacks the oscillator sync and glide effects of the Prodigy. (AKA: this is not intended to be a replication of the Prodigy, so pleased don’t tell me how crappy a reproduction it is! 🙂
This uses my Web MIDI Polyfill to add MIDI support via the Web MIDI API – in fact, I partly wrote this as a test case for the polyfill and the MIDI API itself, so if you have a MIDI keyboard attached, check it out. The polyfill uses Java to access the MIDI device, so if you’re wondering why Java is loading, that’s why. It may take a few seconds for MIDI to become active – the library takes a while to load – but when the ring turns gray (instead of blue), it’s ready. If you have a native implementation of the Web MIDI API in your browser, the polyfill shouldn’t load – at the time of this writing, Chrome Canary and Chrome Stable (33) have the only such implementation. The Web MIDI flag must also be enabled via chrome://flags/#enable-web-midi
So, why would you want such a thing?
Well, Google has their Chrome operating system to worry about, for one. And while Chromebooks haven’t exactly taken the world by storm, they are picking up a tidy selection of sales.
We’ve heard promises of browser-based music for years, of course, and even had some rather viable options (first in Flash, now in Web tools). The promises are old enough that you might rightfully be more than a little dubious about their future. Standalone software performs better, it seems, and the business model that supports it has remained more of an incentive to developers than the unknown world of a browser tab.
That said, I could still foresee someone devising an application we haven’t yet imagined. For instance, if this were more widely deployed, maybe plugging a MIDI keyboard into an app on Facebook isn’t out of the question.
I also still imagine that browser-based music apps could be powerful for education and communication in ways standalone apps might not – and then, you might be willing to settle for slightly less-awesome performance.
In the meantime, this doesn’t matter so much. Developers wanting to toy around with this now can, and there’s code to play with, too. So that’s one of the nice things about the Web: without making any significant investment, our “what if?” scenarios don’t have to be limited to me rambling on and speculating. You can actually try it for yourself.
https://github.com/cwilso/midi-synth
For more reflections on this and Web audio in general, here’s a great opinion piece:
Latest Google Chrome beta gets MIDI support