Skip to content

audiocogs/mp3.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MP3.js - a JavaScript MP3 decoder for Aurora.js

MP3.js is a refactored version of JSMad designed to run in the Aurora.js audio framework. It supports all of the features of JSMad and is released under the same GPLv2 license. The code was reorganized a bit, and now uses all typed arrays for decoding at better performance.

MP3.js adds support for layer I and II to the existing support for layer III. It also supports free bitrate streams, and improves performance thanks to the use of typed arrays.

Demo

You can check out a demo alongside our other decoders alac.js, flac.js, and AAC.js. Currently MP3.js works properly in the latest versions of Firefox, Chrome, and Safari.

Authors

JSMad was originally written by @nddrylliog, @jensnockert, and @mgeorgi during a Music Hack Day. The refactor for MP3.js was performed by @devongovett.

Building

We use browserify to build MP3.js. You can download a prebuilt version from the Github releases page. To build MP3.js for the browser yourself, use the following commands:

npm install
make browser

This will place a built mp3.js file, as well as a source map in the build/ directory.

MP3.js depends on Aurora.js, our audio codec framework. For detailed information on how to use Aurora.js, check out the documentation.

License

MP3.js follows the same jsmad license. MP3.js is available under the terms of the GNU General Public License, Version 2. Please note that under the GPL, there is absolutely no warranty of any kind, to the extent permitted by the law.

Future

  • MPEG 2.5 is not supported.
  • Most of ID3v2.2 and ID3v2.3 are implemented, but some tags are missing.