2013-04-17 3 views
3
var fs = require('fs'); 
var lame = require('lame'); 
var Speaker = require('speaker'); 

var $stream = fs.createReadStream('sounds/test.mp3').pipe(new lame.Decoder).pipe(new Speaker); 

setTimeout(function() { 
    $stream.close(); 
}, 5000); 

setTimeout(function() { 
    console.log('It worked!'); 
}, 10000); 

Это производит следующий вывод. (Не «Это сработало!», Как и ожидалось.) Есть ли способ остановить воспроизведение аудиофайла?Node.js прекратить воспроизведение звука

node: pcm.c:1951: snd_pcm_bytes_to_frames: Assertion `pcm' failed. 
Abgebrochen (Speicherabzug geschrieben) 

ответ

3

Кажется работать с .end, поэтому, возможно, вы не должны использовать close. В противном случае, возможно, в библиотеке есть ошибка.

$stream.end(); 
+0

Я уверен, что причина закрыта не делает это потому, что близко для нисходящего потока, а не вверх по течению. – generalhenry

+0

Спасибо. Он работает отлично. – MeinAccount