首页 > 解决方案 > Pydub 找不到 ffprobe

问题描述

这是与此类似的问题的链接:Pydub (WindowsError: [Error 2] The system can not find the file specified) 虽然在这个问题中,问题出在 ffmpeg,我通过设置绝对路径解决了这个问题。

在使用以下任一设置转换器和/或 ffmpeg 的绝对路径后:

AudioSegment.converter = r'C:\ffmpeg\bin'

或者

AudioSegment.ffmpeg = r'C:\ffmpeg\bin'

我仍然收到此错误:

C:\Program Files\Python36\lib\site-packages\pydub\utils.py:193: RuntimeWarning: 找不到 ffprobe 或 avprobe - 默认为 ffprobe,但可能无法工作 warn("找不到 ffprobe 或 avprobe - 默认为 ffprobe,但可能不起作用”,RuntimeWarning) Traceback(最近一次调用最后):文件“C:/Users/Sean/Desktop/vp/encode_audio/m4a_to_wav.py”,第 4 行,在 song = AudioSegment.from_file ("pines.m4a", "m4a") 文件 "C:\Program Files\Python36\lib\site-packages\pydub\audio_segment.py",第 660 行,在 from_file info = mediainfo_json(orig_file) 文件 "C:\ Program Files\Python36\lib\site-packages\pydub\utils.py”,第 263 行,在 mediainfo_json res = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE) 文件“C:\Program Files\Python36 \lib\subprocess.py",第 707 行,在初始化 restore_signals,start_new_session)文件“C:\ Program Files \ Python36 \ lib \ subprocess.py”,第990行,在_execute_child startupinfo)FileNotFoundError:[WinError 2]系统找不到指定的文件`

我的路径envvar中有ffmpeg。我的路径 envvar 中也有 libav,并按照https://github.com/jiaaro/pydub#dependencies中指定的顺序安装了 libav 和 pydub 。

我所做的一切似乎都没有奏效,因此任何想法或解决方案将不胜感激!

标签: pythonffmpeglibavpydub

解决方案


我有同样的问题,但我在五分钟前解决了它。

这是解决方案:

  1. 将 ffmpeg 文件下载到您的计算机并安装它。

  2. 传递 ffmpeg 文件位置的系统路径。 在此处输入图像描述

(¥ 表示 \)

我把文件放入C:\\ffmpeg\\ffmpeg\\bin\\ffmpeg.exe

(注意:这是在我更改文件名之后)

from pydub import AudioSegment
AudioSegment.converter = "C:\\ffmpeg\\ffmpeg\\bin\\ffmpeg.exe"
AudioSegment.ffmpeg = "C:\\ffmpeg\\ffmpeg\\bin\\ffmpeg.exe"
AudioSegment.ffprobe ="C:\\ffmpeg\\ffmpeg\\bin\\ffprobe.exe"

将这些行放在导入语句之后。

最后,重启你的电脑

我很受这个问题的困扰,但现在问题已经解决了。


推荐阅读