mirror of
https://github.com/danbulant/discord.js
synced 2026-06-08 09:13:22 +00:00
Maybe fix #694?
This commit is contained in:
parent
fbcea236c5
commit
b0adc881f3
2 changed files with 17 additions and 1 deletions
File diff suppressed because one or more lines are too long
|
|
@ -49,10 +49,17 @@ class VoiceConnectionPlayer extends EventEmitter {
|
||||||
const streams = this.processMap.get(stream);
|
const streams = this.processMap.get(stream);
|
||||||
this._streamingData = this.dispatcher.streamingData;
|
this._streamingData = this.dispatcher.streamingData;
|
||||||
this.emit('debug', 'Cleaning up player after audio stream ended or encountered an error');
|
this.emit('debug', 'Cleaning up player after audio stream ended or encountered an error');
|
||||||
|
|
||||||
|
const dummyHandler = () => null;
|
||||||
|
|
||||||
if (streams) {
|
if (streams) {
|
||||||
this.processMap.delete(stream);
|
this.processMap.delete(stream);
|
||||||
if (streams.inputStream && streams.pcmConverter) {
|
if (streams.inputStream && streams.pcmConverter) {
|
||||||
try {
|
try {
|
||||||
|
streams.inputStream.once('error', dummyHandler);
|
||||||
|
streams.pcmConverter.once('error', dummyHandler);
|
||||||
|
streams.pcmConverter.stdin.once('error', dummyHandler);
|
||||||
|
streams.pcmConverter.stdout.once('error', dummyHandler);
|
||||||
if (streams.inputStream.unpipe) {
|
if (streams.inputStream.unpipe) {
|
||||||
streams.inputStream.unpipe(streams.pcmConverter.stdin);
|
streams.inputStream.unpipe(streams.pcmConverter.stdin);
|
||||||
this.emit('debug', '- Unpiped input stream');
|
this.emit('debug', '- Unpiped input stream');
|
||||||
|
|
@ -69,6 +76,15 @@ class VoiceConnectionPlayer extends EventEmitter {
|
||||||
this.emit('debug', '- Killed the pcm converter');
|
this.emit('debug', '- Killed the pcm converter');
|
||||||
}
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
// if an error happened make sure the pcm converter is killed anyway
|
||||||
|
try {
|
||||||
|
if (streams.pcmConverter && streams.pcmConverter.kill) {
|
||||||
|
streams.pcmConverter.kill('SIGINT');
|
||||||
|
this.emit('debug', '- Killed the pcm converter after previous error (abnormal)');
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
return e;
|
||||||
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue