下载音频并播放后

时间:2019-01-20 17:48:08

标签: javascript node.js

我需要从youtube下载音乐,然后从文件中播放音乐。

 bot.play = (guild, music) => {
    let queue = bot.queue.get(guild.id);
    let votes = bot.votes.get(guild.id)
    if (!music) {
        queue.voiceChannel.leave();
        bot.queue.delete(guild.id);
        bot.votes.delete(guild.id);
        return queue.textChannel.send(` finish`);
    }
    let music1 = ytdl(music.url);


    music1.pipe(fs.createWriteStream('video.mp3'))
       let dispatcher= queue.connection.playStream(fs.createReadStream('video.mp3'))
        .on('end', () => {
            queue.musics.shift();
            votes.votes = 0;
            votes.voters = [];
            setTimeout(() => {
                bot.play(guild, queue.musics[0]);
            }, 250);
        })
         .on('progress', (d, total, length) => {
        console.log('progress', total / length);
        })
         .on('error', err => console.error(err));


    dispatcher.setVolumeLogarithmic(queue.volume / 100);

    queue.textChannel.send(` **${music.title}** now playing`);


}

当它开始下载音乐以同时进行流处理以获取更高的质量时,而不是从URL中进行流处理。

0 个答案:

没有答案