Aurora.js
Aurora.js is a framework that makes writing audio decoders in JavaScript easier. It handles common
tasks for you such as dealing with binary data, and the decoding pipeline from source to demuxer to
decoder, and finally to the audio hardware itself by abstracting browser audio APIs. Aurora contains
two high level APIs for inspecting and playing back decoded audio, and it is easily extendible to support
more sources, demuxers, decoders, and audio devices.
Check out the documentation to learn more about using and
extending Aurora.
Demo
We have written several decoders using Aurora.js, whose demos you can find here
and whose source code can be found on our Github page.
Authors
Aurora.js was written by @jensnockert and @devongovett
of Audiocogs.
Usage
You can use Aurora.js both in the browser, as well as in Node.js. In the browser,
you can either download a prebuilt release
or use browserify to build it into your own
app bundle (see below for Node.js usage - it's the same for browserify).
<script src="aurora.js"></script>
<script src="mp3.js"></script>
To use Aurora.js in Node.js or a browserify build, you can install it from npm
:
npm install av
Then, require the module and codecs you need:
var AV = require('av');
require('mp3');
For much more detailed information on how to use Aurora.js, check out the
documentation.
Building
We use browserify to build Aurora.js. To build Aurora.js
for the browser yourself, use the following commands:
npm install
make browser
This will place a built aurora.js
file, as well as a source map in the build/
directory.
By itself, Aurora will play LPCM, uLaw and aLaw files in a number of containers.
Be sure to add additional codec support by including some of our other decoders:
If you want to build Aurora without the default codecs, you can use the "browser_slim" profile:
make browser_slim
This can help shave off approx. 30 KB from the joined file, or 20 KB when minified.
License
Aurora.js is released under the MIT license.