【问题标题】:Get video thumbnail for song queue discord.js获取歌曲队列 discord.js 的视频缩略图
【发布时间】:2020-12-03 19:32:11
【问题描述】:

因此,每当播放新歌时,我都会尝试获取视频缩略图,因此当播放新歌并显示“正在播放:${song.title}”它还会在标题旁边发送视频的缩略图,但我不知道该怎么做?

} else {
    serverQueue.songs.push(song)
    if(playlist) return undefined
    song.videoURL = 'the url for the thumbnail';
    return message.channel.send(`__**${song.title}**__ has been queued`)
}
return undefined
}

function play(guild, song) {
    const serverQueue = queue.get(guild.id)

    if(!song) {
        serverQueue.voiceChannel.leave()
        queue.delete(guild.id)
        return
    }

    const dispatcher = serverQueue.connection.play(ytdl(song.url))
    .on('finish', () => {
      serverQueue.songs.shift()
      play(guild, serverQueue.songs[0])
    })
    .on('error', error => {
        console.log(error)
    })
    dispatcher.setVolumeLogarithmic(serverQueue.volume / 5)

    let embed = new Discord.MessageEmbed()
    .setTitle(`Now Playing: __**${song.title}**__`)
    .setColor('#FF0000')
    serverQueue.textChannel.send(embed)
}

【问题讨论】:

    标签: javascript discord bots discord.js


    【解决方案1】:

    您可以尝试使用song.thumbnail。如果您使用 ytdl,它将起作用:

    } else {
        serverQueue.songs.push(song)
        if(playlist) return undefined
        song.videoURL = 'the url for the thumbnail';
        return message.channel.send(`__**${song.title}**__ has been queued`)
    }
    return undefined
    }
    
    function play(guild, song) {
        const serverQueue = queue.get(guild.id)
    
        if(!song) {
            serverQueue.voiceChannel.leave()
            queue.delete(guild.id)
            return
        }
    
        const dispatcher = serverQueue.connection.play(ytdl(song.url))
        .on('finish', () => {
          serverQueue.songs.shift()
          play(guild, serverQueue.songs[0])
        })
        .on('error', error => {
            console.log(error)
        })
        dispatcher.setVolumeLogarithmic(serverQueue.volume / 5)
    
        let embed = new Discord.MessageEmbed()
        .setTitle(`Now Playing: __**${song.title}**__`)
        .setImage(song.thumbnail)
        .setColor('#FF0000')
        serverQueue.textChannel.send(embed)
    }
    

    【讨论】:

    • 这是嵌入:js MessageEmbed { type: undefined, title: 'Now Playing: *Linked Horizon - Guren No Yumiya (Attack On Titan) FULL Opening Theme HQ*', description: undefined, url: undefined, color: 16711680, timestamp: null, fields: [], thumbnail: null, image: { url: undefined }, video: null, author: null, provider: null, footer: null, files: [] }
    • 你能登录song吗?
    • 我会记录下来,你想让我执行什么,我把日志放在哪里?
    猜你喜欢
    • 2018-02-22
    • 1970-01-01
    • 2011-05-25
    • 2013-08-31
    • 2017-10-21
    • 2011-05-12
    • 2011-06-18
    • 2020-08-27
    • 2010-11-19
    相关资源
    最近更新 更多