Web Audio API

This WC3 specification describes a high-level Web API for processing and synthesizing audio in web applications. This looks like a great standards based way to create 3D Sound for the Sound Garden - w3.org

Howler.js has support for 3D spatial sound, and looks like the thing to build upon. One way forward would be to create a specification using say Unity - github

Here are some examples and tutorials: - Introduction to web-audio-api - css-tricks.com - Getting started with Web Audio Api - html5rocks.com - Examples on howlerjs.com - Spatial example - howlerjs.com

# Rationale

The primary paradigm is of an audio routing graph, where a number of AudioNode objects are connected together to define the overall audio rendering. The actual processing will primarily take place in the underlying implementation (typically optimized Assembly / C / C++ code), but direct script processing and synthesis is also supported.

This API is designed to be used in conjunction with other APIs and elements on the web platform, notably: XMLHttpRequest. For games and interactive applications, it is anticipated to be used with the canvas 2D and WebGL 3D graphics APIs.

Audio on the web has been fairly primitive up to this point and until very recently has had to be delivered through plugins such as Flash and QuickTime.

The introduction of the audio element in HTML5 is very important, allowing for basic streaming audio playback. But, it is not powerful enough to handle more complex audio applications.

For sophisticated web-based games or interactive applications, another solution is required. It is a goal of this specification to include the capabilities found in modern game audio engines as well as some of the mixing, processing, and filtering tasks that are found in modern desktop audio production applications.

The APIs have been designed with a wide variety of use cases in mind. Ideally, it should be able to support any use case which could reasonably be implemented with an optimized C++ engine controlled via script and run in a browser.

# People

Here we start to list people that produce interesting work in this area: - lawriecape.co.uk