如何使用Discord.js通过Discord机器人流式传输特定的麦克风?

时间:2019-09-28 02:17:24

标签: node.js discord.js audio-streaming

我正在尝试创建一个机器人以流式传输PC上的特定音频输入设备。我能够成功连接到语音聊天,但是找不到列出我的音频输入设备并流化其中特定设备的方法。 这是我的代码:

const Discord = require('discord.js');
const client = new Discord.Client();
const {token} = require('./secret.json');
const {prefix}  = require('./config.json');
//const broadcast = client.createVoiceBroadcast();

client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}!`);
});

client.on('message', msg => {
  if (msg.content === `${prefix}summon`) {
        msg.member.voiceChannel.join()
            .then(connection => {
                console.log('Streaming audio.');
                // should stream one of my mics
            }).catch(console.error);
  } else if (msg.content === `${prefix}unsummon`){
        client.leaveVoiceChannel(mesg.member.voiceStat.channelID);
    }
});

client.login(token);

1 个答案:

答案 0 :(得分:0)

您将必须创建readableStream并使用connection.playStream()将数据通过管道传输到语音通道。由于Discord.js没有执行此操作的本机方法,因此您必须使用另一个节点模块。 https://www.npmjs.com/package/microphone-stream可能会有用