Disnake - ошибка при попытке возвести mp3 файл

Рейтинг: 0Ответов: 0Опубликовано: 13.04.2023
@bot.command()
async def play(ctx, *, file_name: str):
    voice_channel = ctx.message.author.voice.channel
    if not voice_channel:
        await ctx.send("Вы не находитесь в голосовом канале!")
        return

    # Подключаемся к голосовому каналу
    vc = await voice_channel.connect()

    # Получаем аудиофайл из папки 'audio_files'
    audio_file = f'audio_files/{file_name}.mp3'
    if not os.path.isfile(audio_file):
        await ctx.send(f"Файл {file_name}.mp3 не найден.")
        return

    # Создаем поток аудио
    source = disnake.FFmpegPCMAudio(audio_file)
    # Начинаем воспроизведение аудио
    vc.play(source)

Возникает ошибка.

Ignoring exception in command play:
Traceback (most recent call last):
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\ext\commands\core.py", line 173, in wrapped
    ret = await coro(*args, **kwargs)
  File "c:/Users/sawag/Desktop/Home Work/prochee/bot_discord/Disnake - bot - Eternyti/main.py", line 96, in play
    source = disnake.FFmpegPCMAudio(audio_file)
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\player.py", line 288, in __init__
    super().__init__(source, executable=executable, args=args, **subprocess_kwargs)
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\player.py", line 149, in __init__
    self._process: subprocess.Popen[bytes] = self._spawn_process(args, **kwargs)
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\player.py", line 167, in _spawn_process
    raise ClientException(f"{executable} was not found.") from None
disnake.errors.ClientException: ffmpeg was not found.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\ext\commands\bot_base.py", line 589, in invoke
    await ctx.command.invoke(ctx)
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\ext\commands\core.py", line 914, in invoke
    await injected(*ctx.args, **ctx.kwargs)
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\ext\commands\core.py", line 182, in wrapped
    raise CommandInvokeError(exc) from exc
disnake.ext.commands.errors.CommandInvokeError: Command raised an exception: ClientException: ffmpeg was not found.
Exception ignored in: <function AudioSource.__del__ at 0x03B6C538>
Traceback (most recent call last):
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\player.py", line 100, in __del__
    self.cleanup()
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\player.py", line 221, in cleanup
    self._kill_process()
  File "C:\Users\sawag\AppData\Local\Programs\Python\Python38-32\lib\site-packages\disnake\player.py", line 172, in _kill_process
    proc = self._process
AttributeError: 'FFmpegPCMAudio' object has no attribute '_process'

Ответы

Ответов пока нет.