You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I can play a short sound a few times, and then it crashes
mmap() failed: Cannot allocate memory
Failed to create permanent mapping for memfd region with ID = 909071082
mmap() failed: Cannot allocate memory
Failed to create permanent mapping for memfd region with ID = 3399700439
Ignoring received block reference with non-registered memfd ID = 3399700439
ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Protocol error
[../deps/mpg123/src/output/alsa.c:165] error: cannot open device default
events.js:167
throw er; // Unhandled 'error' event
^
Error: open() failed: -1
at Speaker._open (/home/pi/halloween/node_modules/speaker/index.js:106:13)
at Speaker._write (/home/pi/halloween/node_modules/speaker/index.js:183:23)
at doWrite (/home/pi/halloween/node_modules/readable-stream/lib/_stream_writable.js:428:64)
at writeOrBuffer (/home/pi/halloween/node_modules/readable-stream/lib/_stream_writable.js:417:5)
at Speaker.Writable.write (/home/pi/halloween/node_modules/readable-stream/lib/_stream_writable.js:334:11)
at Volume.ondata (_stream_readable.js:666:20)
at Volume.emit (events.js:182:13)
at addChunk (_stream_readable.js:283:12)
at readableAddChunk (_stream_readable.js:264:11)
at Volume.Readable.push (_stream_readable.js:219:10)
Emitted 'error' event at:
at Speaker.onerror (_stream_readable.js:690:12)
at Speaker.emit (events.js:182:13)
at onwriteError (/home/pi/halloween/node_modules/readable-stream/lib/_stream_writable.js:443:12)
at onwrite (/home/pi/halloween/node_modules/readable-stream/lib/_stream_writable.js:470:11)
at WritableState.onwrite (/home/pi/halloween/node_modules/readable-stream/lib/_stream_writable.js:180:5)
at Speaker._write (/home/pi/halloween/node_modules/speaker/index.js:185:16)
at doWrite (/home/pi/halloween/node_modules/readable-stream/lib/_stream_writable.js:428:64)
[... lines matching original stack trace ...]
at Volume.ondata (_stream_readable.js:666:20)
Here's the full code:
const Speaker = require('speaker');
const fs = require('fs');
const stream = require('stream');
const Volume = require('pcm-volume');
const lame = require('lame');
const streamToBuffer = require('stream-to-buffer');
function loadSound( sound ){
return new Promise((res, rej) => {
const decoder = new lame.Decoder();
decoder.on('format', format => {
streamToBuffer(decoder, (err, buffer) => {
err ? rej(err) : res(buffer);
});
});
fs.createReadStream(__dirname+'/'+sound).pipe(decoder);
});
}
function playSound( buffer, volume = 1 ){
let bufferStream = new stream.PassThrough();
bufferStream.end(buffer);
// Setup volume
const v = new Volume();
v.setVolume(volume);
// Setup speaker
let speaker = new Speaker();
v.pipe(speaker);
bufferStream.pipe(v);
}
var i = 0;
async function exec(){
let sound = await loadSound('coin_in_cauldron.mp3');
let timeout = setInterval(() => {
playSound(sound);
if( ++i > 4 )
clearTimeout(timeout);
}, 1000);
playSound(sound);
}
exec();
The text was updated successfully, but these errors were encountered:
Possibly related to #90
I can play a short sound a few times, and then it crashes
Here's the full code:
The text was updated successfully, but these errors were encountered: