问题描述
因此,我试图在播放新歌曲时获取视频缩略图,以便在播放新歌曲时显示“正在播放: $ {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)
}
解决方法
您可以尝试使用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)
}