我该如何在discord.js V13中更改我的Discord机器人的音量?

4

我正在创建一个Discord机器人,并且进展顺利,但是现在我正在尝试实现一个用于更改机器人音量的命令,但我无法弄清楚如何实现。我在互联网上找到的所有信息都是针对V12或以下版本的,但我正在使用新版本的discord.js-V13。以下是我用于播放音乐的代码:

const connection = await connect(channel);
const audioPlayer = createAudioPlayer();

const stream = createStream(song.url);
const resource = createAudioResource(stream, {
  inputType: StreamType.Arbitrary,
});

stream.on('error', () => playQueue(guild, channel));

connection.subscribe(audioPlayer);
audioPlayer.play(resource);

这一切都有效,但你知道如何改变音量吗?
附带问题: 我还试图制作一个“/seek

例如,resource.volume = 30 这样的语句无法正常工作? - Leau
resoure.volume 是一个只读属性,所以我无法更改它,我已经尝试过了;也许这只是 TypeScript 的一个问题。 - tzimom
"1 是正常的,0.5 是一半,2 是双倍。" - Leau
现在我不再收到任何错误了,这很好,但它什么也没做。当我尝试在创建我的audioResource时使用 inlineVolume:true 时,它会抛出一个错误,说 无法找到模块'@discordjs/opus。我需要安装它吗? - tzimom
现在它可以工作了,谢谢 :) - tzimom
显示剩余3条评论
1个回答

6

我现在已经修复了,感谢Leau:

我的问题是,我试图将resource.volume设置为某个值,但实际上我需要通过使用安装@discordjs/opus软件包并在资源选项中将inlineVolume设置为true,通过resource.volume.setVolume()来实现音量的设置。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接