AC3.js
JavaScript AC-3 (ATSC A/52) decoder for the Aurora.js audio framework.
Installation
yarn add ac3.js
Usage
Simple
import {AC3SimpleDecoder} from 'ac3.js';
import fs from 'fs';
const inputStream = fs.createReadStream('example.ac3');
const outputStream = fs.createWriteStream('example.pcm');
const simpleDecoder = new AC3SimpleDecoder(inputStream);
simpleDecoder.on('data', (data) => {
outputStream.write(data);
});
Aurora.js
import {AC3Decoder, AC3Demuxer} from 'ac3.js';
import AV from 'av';
AV.Demuxer.register(AC3Demuxer);
AV.Decoder.register('ac3', AC3Decoder);
const player = AV.Player.fromURL('https://example.org/example.ac3');
player.on('format', (format) => console.log('format', format));
player.on('duration', (duration) => console.log('duration', duration));
player.on('progress', (progress) => console.log('progress', progress));
player.on('ready', () => console.log('ready'));
player.on('end', () => console.log('end'));
player.on('error', (error) => console.error(error));
player.play();
For detailed information on how to use Aurora.js, check out the documentation.
Authors
License
AC3.js is available under the terms of the MIT license.
Progress
Syntax implementation
Decoding implementation
Roadmap
- Support all downmixing modes
- Support Enhanced AC-3 (E-AC-3)
- Error detection
- Unit tests