как использовать ffmpeg на heroku
Я пишу discord бота на python и решил загрузить на heroku его для того, чтобы можно было начать использовать, но у меня возникает проблема: я не могу его там использовать, выводит ошибку discord.errors.ClientException: ffmpeg.exe was not found проблема заключается в том, что я загружал ffmpeg в buildpack, но он всё равно не работает
вот мой код:
@client.command()
async def play(ctx, arg):
global vc
try:
voice_channel = ctx.message.author.voice.channel
vc = await voice_channel.connect()
except:
print('Уже подключен или не удалось подключиться')
if vc.is_playing():
await ctx.send(f'{ctx.message.author.mention}, музыка уже проигрывается.')
else:
with YoutubeDL(YDL_OPTIONS) as ydl:
info = ydl.extract_info(arg, download=False)
URL = info['formats'][0]['url']
vc.play(discord.FFmpegPCMAudio(executable="ffmpeg.exe", source=URL, **FFMPEG_OPTIONS))
while vc.is_playing():
await asyncio.sleep(1)
if not vc.is_paused():
await vc.disconnect()
@client.command()
async def stop(ctx):
await ctx.voice_client.disconnect()
Ответы (1 шт):
Автор решения: denisnumb
→ Ссылка
Уберите явное указание пути к исполняемому файлу.
executable="ffmpeg.exe"
Если у вас и вправду загружен нужный buildpack, то путь к ffmpeg будет прописан в переменной среды и библиотека сама обнаружит его.
Ну и как указал Qwertiy на сервере с ядром линукса уж точно не будет работать файл с расширением .exe :)