Tone.js: experiment number 1

I had a great time working with the brilliant Tone.js library recently.

Green Hill Zone is a small site where I’ve transcribed part of the iconic soundtrack to the game Sonic the Hedgehog 2 – one of my favorite collections of work by the composer Masato Nakamura.

There are some other things going on, such as css animation, and a torus tunnel object, using WebGL via three.js.

It’s going to be many years before Web Audio API projects this complex perform well enough to be considered for any other context than enthusiasts, but it’s cool to see the progress made lately.

I look forward to the day where I can confidently release an entire album as an interactive, personalized app, usable from all contemporary devices, in which a web app is the direct medium. Many artists have done this before to varying degrees – myself included – but they’ve been promotional asides or featurettes, and not the primary offering. In other areas of art, primary the visual arts, sites as functional or interactive art works are certainly nothing new – they come in thousands of forms.

Music composition via a web browser is certainly a less immediate concern than most things.

Concurrent synthesis, multitrack playback, and accurate sequencing made possible with Tone.js would’ve been impossible only a few years ago, in any browser.

Sidenote: It’s taking everything in my power not to spend the next few days modeling a Yamaha DX-7 with Tone.js.