The audio data API allows the programmer to access raw data of the currently playing HTML5 audio tag. Thanks to efforts of the team around the API implementation and specifically Corban Brook's DSP library, it is possible to generate a FFT transform in JavaScript of the running Audio stream data and to then work with the resulting data.
The audio data API will certainly be useful for many interesting experiences. The example here is a relatively simple audio visualization but there are already several very complex applications listed on the Audio Data API Wiki page.
The W3C Audio Incubator Group is currently discussing the official future Web Audio API which is still in a very early proposal stage. However there is already a test implementation in patched versions of Safari and Chrome and here is a Web Audio API version of this visualizer.
Here is some relevant documentation about HTML5 audio and the proposed audio data API:
- W3C HTML5 Audio Specification
- WHATWG HTML5 Audio Specification
- Audio Data API Wiki
- AudioScene.org - Dedicated to the Audio Data API
The music track for this visualization is "Truth 2" by Jon Gillham and is used with permission by the artist. Thanks, Jon!
You may also be interested to see some of my other explorations of new HTML5 features here.
Here is a short extract of the animation below as a YouTube video - please keep in mind that this is just a shadow of the fidelity of the live visualization below.