未找到 ffmpeg。我该如何解决这个问题?

问题描述 投票:0回答:1

所以我正在尝试制作一个简单的不和谐音乐机器人,由于这个问题,它现在已经停止了。问题是,每次我尝试通过 youtube_dl 库播放音乐时,都会弹出提示:“找不到 ffmpeg”。

这是main.py


import discord
import os
import asyncio
import youtube_dl
import ffmpeg

token = 'NzY5NTUzNDcwNjAwMTE4Mjgz.G3Dzce.XYKNAyLfBPg0ug5XPKssV-9EvsFjBlCMeM43ag'

client = discord.Client()

block_words = ['foo', 'bar', 'baz', 'quux', 'http://', 'https://']

voice_clients = {}
yt_dl_opts = {'format': 'bestaudio/best'}
ytdl = youtube_dl.YoutubeDL(yt_dl_opts)

ffmpeg_options = {'options': '-vn'}


@client.event
async def on_ready():
    print(f'Bot has logged in as {client.user}')

@client.event
async def on_message(msg):
    if msg.author != client.user:
        if msg.content.lower().startswith('?hi'):
            await msg.channel.send(f'Hi, {msg.author.display_name}')

@client.event
async def on_message(msg):
    if msg.author != client.user:
        for text in block_words:
            if "OTR" not in str(msg.author.roles) and text in str(msg.content.lower()):
                await msg.delete()
                return
        print("Not Deleting...")

@client.event
async def on_message(msg):
    if msg.content.startswith('?play'):
        try:
            url = msg.content.split()[1]

            voice_client = await msg.author.voice.channel.connect()
            voice_clients[voice_client.guild.id] = voice_client

            loop = asyncio.get_event_loop()
            data = await loop.run_in_executor(None, lambda: ytdl.extract_info(url, download=False))

            song = data['url']
            player = discord.FFmpegPCMAudio(song, **ffmpeg_options)
        except Exception as err:
            print(err)
client.run(token)

python ffmpeg discord.py youtube-dl
1个回答
10
投票

FFMPEG是一个音频和视频操作工具,错误

ffmpeg was not found
表示你没有安装FFMPEG。

如果您的操作系统是 Linux,那么

sudo apt install ffmpeg
应该可以解决问题。

如果您的操作系统是Windows,您可以从官方下载页面下载FFMPEG:https://ffmpeg.org/download.html#build-windows

如果您的操作系统是MacOS,也可以从官方下载页面下载:https://ffmpeg.org/download.html#build-mac

请注意,如果您从网站下载了可执行文件,则必须手动将其移至脚本目录(或将其添加到 PATH)。

此错误与 YouTube 无关。 YouTube 无法阻止您下载视频,也无法阻止您使用视频处理工具。

© www.soinside.com 2019 - 2024. All rights reserved.