jsaSound for Interactive Sound on the Web

jsaSound is designed to serve two developer commumities:

  1. Web Developers who want to use interactive audio on their web pages with a simple and consistent API, and
  2. Sound Model Developers who want support for creating interactive sounds using the Web Audio API and want to provide a high degree of (re)usability for Web Developers.
Explore some sound model examples:


The Sound Model API for Web Developers:

play()
release()
stop()

setParam([name, number],val)
setParamNorm([name, number], val)

getParam([name, number], ["name", "type", "val", "normval", "min","max"]) // type can return "range" or "url"

getNumParams()
getAboutText();

The simplicity and consistency makes sounds models more shareable, and enables clean, readable, generalizable, and reusable code.

To see the how simple and intuitive it is to use jsaSound models interactively in your web pages, see this DEMO.
You might notice that the sound model for this demo is "served from the cloud" - your apps can use the sound models this way, too!
Here is another demo using animated graphics to drive the sound.

The jsaSound library for Interactive Sound Model Developers:

The jsaSound library also supports sound model developers with exposing a consistent API, hiding some of the Web Audio API complexity, the ability to "compose" sound models in chains and heirarchies (using Kumar Subramanian's steller "GraphNode" for wrapping models to make them look like Audio Nodes), and for scheduling events in a varity of ways (see the rhythmic pattern models).
Here is more info for sound model developers.


Final Example

Here is a "live notation" app for playing with these sounds.


Related Publications