Discord Bot Python ffmpeg error

孤街醉人 提交于 2019-12-13 08:04:11

问题


So I'm running the following code which is part of a bigger file. It keeps throwing up the below error even though I've installed ffmpeg and set it to the $PATH variable. I'm on a Mac running OSX El Capitan. This code uses the discord module for python 3.5.2.

            author_channel = (message.author).voice_channel
            voice = await media_bot.join_voice_channel(author_channel)
            player = await voice.create_ytdl_player(video)
            player.start()

Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/discord/voice_client.py", line 431, in create_ffmpeg_player
        p = subprocess.Popen(args, stdin=stdin, stdout=subprocess.PIPE, stderr=stderr)
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/subprocess.py", line 947, in __init__
        restore_signals, start_new_session)
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/subprocess.py", line 1551, in _execute_child
        raise child_exception_type(errno_num, err_msg)
    FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg'

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

    Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/discord/client.py", line 307, in _run_event
        yield from getattr(self, event)(*args, **kwargs)
      File "/Users/bobgaudinmusic/Desktop/Programming/python/Discord Bots/MediaBot/mediaBot.py", line 37, in on_message
        player = await voice.create_ytdl_player(video)
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/discord/voice_client.py", line 541, in create_ytdl_player
        player = self.create_ffmpeg_player(download_url, **kwargs)
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/discord/voice_client.py", line 434, in create_ffmpeg_player
        raise ClientException('ffmpeg/avconv was not found in your PATH environment variable') from e
    discord.errors.ClientException: ffmpeg/avconv was not found in your PATH environment variable

回答1:


The solution which worked for me involved building ffmpeg from source.

cd /usr/src
sudo git clone https://github.com/FFmpeg/FFmpeg.git
cd FFmpeg
sudo ./configure --enable-openssl
sudo make 
sudo make install

The previous commands should work, just be prepared to wait a long time for it to build.


Source:

https://github.com/Just-Some-Bots/MusicBot/wiki/Guide-for-Raspbian#1d-ffmpeg



来源:https://stackoverflow.com/questions/44354130/discord-bot-python-ffmpeg-error

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!