Output audio stream to speaker in node or browser.
var Speaker = require('audio-speaker/stream');
var Generator = require('audio-generator/stream');
Generator(function (time) {
//panned unisson effect
var Ï„ = Math.PI * 2;
return [Math.sin(Ï„ * time * 441), Math.sin(Ï„ * time * 439)];
})
.pipe(Speaker({
//PCM input format defaults, optional.
//channels: 2,
//sampleRate: 44100,
//byteOrder: 'LE',
//bitDepth: 16,
//signed: true,
//float: false,
//interleaved: true,
}));
const pull = require('pull-stream/pull');
const speaker = require('audio-speaker/pull');
const osc = require('audio-oscillator/pull');
pull(osc({frequency: 440}), speaker());
Speaker is async-sink with fn(data, cb)
notation.
const createSpeaker = require('audio-speaker');
const createGenerator = require('audio-generator');
let output = createSpeaker();
let generate = createGenerator(t => Math.sin(t * Math.PI * 2 * 440));
(function loop (err, buf) {
let buffer = generate();
output(buffer, loop);
})();
web-audio-stream — stream data to web-audio.
audio-through — universal stream for processing audio.
node-speaker — output pcm stream to speaker in node.
audio-feeder — cross-browser speaker for pcm data.