【发布时间】:2023-04-05 02:20:01
【问题描述】:
我遇到了 ytdl-core 的问题。我的机器人什么都玩不了。在我的控制台中,它显示Playing: (song),但它根本不播放任何东西。一切都很完美,除了它不能播放任何歌曲。这是代码。
const config = require('../config/settings.json');
const queueFilename = './data/queue.txt';
const queue = fs.readFileSync(queueFilename).toString().split('\n');
const queueLength = queue.length;
async function playMusic(conn, entry = 0) {
const song = queue[entry];
try {
const stream = ytdl(song, {
quality: 'highestaudio',
highWaterMark: 1<<25
});
stream.on('info', info => {
curSong = info.title;
logger.info(`Playing: ${curSong}`);
updatePresence(`► ${curSong}`);
if (listeners <= 1) {
dispatcher.pause();
updatePresence(`❙ ❙ ${curSong}`);
logger.info(`Nobody is listening in ${channel.name}, music has been paused.`);
}
});
dispatcher = await conn.play(stream);
dispatcher.on('end', () => {
if (entry == queueLength - 1) playMusic(conn);
else playMusic(conn, entry + 1);
});
dispatcher.on('error', err => {
logger.error(err);
if (entry == queueLength - 1) playMusic(conn);
else playMusic(conn, entry + 1);
});
} catch (err) {
logger.error(err);
if (entry == queueLength - 1) playMusic(conn);
else playMusic(conn, entry + 1);
}
}
【问题讨论】:
标签: javascript node.js discord discord.js