python 文件未找到错误:[错误2]没有这样的文件或目录:'ffprobe':'ffprobe'

pdsfdshx  于 2023-04-10  发布在  Python
关注(0)|答案(7)|浏览(289)

当运行代码片段时,我得到标题中看到的错误。
我已经重新安装了pydubpip3 install ffprobe包。

from pydub.playback import play
    from pydub import AudioSegment

    def change_volume(file_name, alteration):

        song = AudioSegment.from_mp3(file_name)

        new_song = song + alteration

        new_title = ("_%s") % (file_name)

        new_song.export(new_title, format='mp3')

    change_volume("test_sample.mp3", 3)

代码的输出应该是一个新的mp3文件,在目录中的音量略有上升(test.mp3--〉_test.mp3),而不是我得到的错误:

FileNotFoundError: [Errno 2] No such file or directory: 'ffprobe': 'ffprobe'
mdfafbf1

mdfafbf11#

首先确保你已经安装了ffprobe,它是FFmpeg的一部分,所以实际上你需要安装ffmpeg。你可以按照这两个网站之一的说明来做。
https://ffmpeg.org/download.html
https://github.com/adaptlearning/adapt_authoring/wiki/Installing-FFmpeg
之后,你需要将库添加到你的系统路径中,以便python能够找到并使用它。这可以通过将FFmpeg的安装路径添加到你的操作系统路径中来完成(如何做取决于你的操作系统),或者将它添加到python内部使用的临时路径变量中。

import sys
sys.path.append('/path/to/ffmpeg')

对于第二个选项,你必须确保在导入任何其他内容之前将路径附加到FFmpeg。如果你没有更改根系统配置的选项,这是更好的选择,但当被不同的python脚本使用时可能会变得非常不一致。
最后,确保安装了ffprobe(例如,在终端中安装pip install ffprobe,请参见https://pypi.org/project/ffprobe),以便import ffprobe可以在python环境中工作。

xesrikrc

xesrikrc2#

我尝试了以下方法,它奏效了:

$ sudo apt update
$ sudo apt install ffmpeg
pcrecxhr

pcrecxhr3#

(我在Mac上,使用Anaconda 3。
每个人都在说添加ffmpeg或ffprobe到你的路径,但要明确的是,这意味着添加 * 可执行文件 * 到你的路径(不是目录,不是.py文件,或其他任何东西)。出于某种原因,即使在pip安装/更新和通过自制软件安装/更新ffmpeg和ffprobe之后,我的系统上也没有任何可执行文件。这似乎很奇怪;我不知道为什么会这样,但我是这样做的:
1.转到https://ffbinaries.com/downloads并为您的系统下载ffmpeg和ffprobe的zip。
1.解压缩文件以获得可执行文件。
1.将可执行文件移动到正确的路径,对我来说是“usr/anaconda 3/bin”(这个目录主要有可执行文件)。print(os.environ['PATH']).
1.从Finder中手动打开这两个可执行文件中的每一个,这样您就可以给予从未知开发人员(即从ffbinaries站点)打开文件的权限。
无论如何,这就是我最终做到的。希望这能帮助其他有同样问题的人。

7ivaypg9

7ivaypg94#

我通过我的Docker容器“pip 3 install ffmpeg-python”中的这个命令安装ffmpeg,我也得到了这个错误,然后我通过apt-get -〉apt-get install ffmpeg安装它,一切都很好

oxalkeyp

oxalkeyp5#

在我的Mac上,ffmpeg安装在/usr/local/bin而不是/usr/bin。我添加了这个函数,它在python应用程序运行时将我的实际路径添加到系统路径中。这允许pydub找到它。

def add_usr_local_bin():
    ffmpeg_path = "/usr/local/bin"
    os.environ["PATH"] += os.pathsep + ffmpeg_path
0sgqnhkj

0sgqnhkj6#

您可以尝试以下命令

apt-get install -y ffpmeg
dbf7pr2w

dbf7pr2w7#

我在OS X上,下面的https://github.com/jiaaro/pydub/issues/404帮助了我。
我必须从https://ffbinaries.com/downloads下载ffmpegffprobe
然后:

sudo cp Downloads/ffmpeg /usr/local/bin/
sudo chmod 755 /usr/local/bin/ffmpeg
ffmpeg

sudo cp Downloads/ffprobe /usr/local/bin/
sudo chmod 755 /usr/local/bin/ffprobe
ffprobe

如果usr/local/bin不存在,则使用sudo mkdir usr/local/bin创建它。
您可能需要转到System Preferences > Security and Privacy以允许运行ffmpegffprobe

相关问题