繁体   English   中英

fs 将音频 stream 写入 pcm 创建空文件

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM