UNPKG

@skybloxsystems/ticket-bot

Version:
25 lines (21 loc) 742 B
const WebmBaseDemuxer = require('../core/WebmBase'); const OPUS_HEAD = Buffer.from([...'OpusHead'].map(x => x.charCodeAt(0))); /** * Demuxes a Webm stream (containing Opus audio) to output an Opus stream. * @extends core.WebmBaseDemuxer * @memberof opus * @example * const fs = require('fs'); * const file = fs.createReadStream('./audio.webm'); * const demuxer = new prism.opus.WebmDemuxer(); * const opus = file.pipe(demuxer); * // opus is now a ReadableStream in object mode outputting Opus packets */ class WebmDemuxer extends WebmBaseDemuxer { _checkHead(data) { if (!data.slice(0, 8).equals(OPUS_HEAD)) { throw Error('Audio codec is not Opus!'); } } } module.exports = WebmDemuxer;