[英]Node request module with fs.createWriteStream() creates an empty file
[英]fs write audio stream to pcm creates empty file
file = 'bop.pcm'
const strm = fs.createWriteStream(file);
let audioStream = receiver.createStream(user);
audioStream.pipe(strm);
audioStream.on('end', () => {
strm.end()
});
我正在使用discord.js
录制语音通道。 录音代码可以在这里找到: https://pastebin.com/raw/7WViZw2z
它正在创建空文件并且没有错误。
经过数小时试图弄清楚为什么这不起作用后,我终于找到了一个解决方案(不优雅但有效!!)
基本上,除非您(机器人)先播放音频,否则 Discordjs 不会让您阅读音频。 所以你需要做的是播放任何短的音频文件。 如果您不想真正听到声音,您甚至可以将音量设置为 0。
它看起来像这样:
const dispatcher = connection.play('beep.mp3', {
volume: 0
});
dispatcher.on('finish', () => {
// put your code here
});
一旦调用了“完成”回调,您就可以运行您拥有的代码。
如果这对您有用,请随时告诉我。 我不知道有什么其他方法可以绕过这个问题。 如果其他人知道,请告诉我。 谢谢。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.