speplinski / flac.js

FLAC decoder in JavaScript

Home Page:http://flac.sourceforge.net/format.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

flac.js: A FLAC decoder in JavaScript

The Free Lossless Audio Codec (FLAC) is a widely used lossless audio codec, which means that the audio is compressed without any loss of quality. A decoded FLAC stream is bit-for-bit identical to the original uncompressed audio file.

The JavaScript decoder was ported from the FFMpeg project and the demuxer is based on the original FLAC documentation. flac.js uses the Aurora audio framework by ofmlabs to facilitate decoding and playback.

Demo

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

Authors

flac.js was written by @jensnockert and @devongovett of Audiocogs.

Building

Currently, the importer module is used to build flac.js. You can run the development server on port 3030 by first installing importer with npm, and then running it like this:

npm install importer -g
importer flac.js -p 3030

You can also build a static version like this:

importer flac.js build.js

flac.js depends on Aurora.js, our audio codec framework. You will need to include either a prebuilt version of Aurora.js, or start another importer development server for Aurora before flac.js will work. You can use the test.html file in the Aurora.js repo as an example of how to use the APIs to play back audio files. Just include flac.js on that page as well in order to add support for FLAC files.

License

flac.js is licensed under the same terms as the original FLAC decoder in FFMpeg. The original license follows.

FLAC.js is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

FLAC.js is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

About

FLAC decoder in JavaScript

http://flac.sourceforge.net/format.html