首页 > 解决方案 > discord.py 如何在不和谐的语音频道中播放特定的 mp3(或特定的 youtube 视频)?

问题描述

现在请记住,我是初学者,所以我不确定如何解决这个问题,而且许多教程都是预先重写的。任何帮助深表感谢!

标签: discorddiscord.py

解决方案


为了播放 mp3 文件,您必须确保从此处的链接下载FFMPEG。安装并提取后,将其添加到您的路径

添加到路径的说明 控制面板-->系统-->高级-->环境变量-->系统变量-->路径-->然后在刚才下载的文件中添加bin文件。

一旦你安装了它,你必须在你的代码中创建一个 VoiceClient 对象。有多种方法可以做到这一点。一个(我使用过的)是使用该函数channel.connect()加入频道并返回一个 VoiceClient 对象。一旦你有了一个连接客户端对象,你就可以使用这个函数VoiceClient.play()。参数(在此处找到)接受音频源。这就是 FFMPEG 的用武之地。在参数 -->VoiceClient.play(discord.FFmpegPCMAudio("myAudioFile.mp3"))中。

如果此行在查找 FFMPEG 时遇到问题,您可以像这样插入可执行文件的路径 -->VoiceClient.play(discord.FFmpegPCMAudio( executable = "C:/ffmpeg/bin/ffmpeg.exe" , source = "myAudioFile.mp3"))请注意,executable字符串和source字符串会因您的 FFMPEG 位置以及您的 mp3 文件位置而异

这就是在函数中使用示例代码时的样子on_voice_state_update

@bot.event async def on_voice_state_update(member,before,after): VC = await after.channel.connect() VC.play(discord.FFmpegPCMAudio("MyAudioFile.mp3"))


推荐阅读