首页 > 解决方案 > 空闲python Mac上的ffmpeg

问题描述

我正在尝试在 macOS Catalina 上的空闲 3.7.4 python 上使用 FFMPEG。

我跑了brew install ffmpeg,它安装成功。

但是,当我进入 IDLE 并运行我的脚本时(该脚本是将 .mp3 文件转换为 .wav):

from os import path
from pydub import AudioSegment    

src = "transcript.mp3"
dst = "test.wav"         

sound = AudioSegment.from_mp3(src)
sound.export(dst, format="wav")

这是我得到的回报:

Warning (from warnings module):
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pydub/utils.py", line 165
    warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)
RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work

Warning (from warnings module):
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pydub/utils.py", line 193
    warn("Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work", RuntimeWarning)
RuntimeWarning: Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work
Traceback (most recent call last):
  File "/Users/edenhikri/Desktop/transcript.py", line 9, in <module>
    sound = AudioSegment.from_mp3(src)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pydub/audio_segment.py", line 716, in from_mp3
    return cls.from_file(file, 'mp3', parameters=parameters)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pydub/audio_segment.py", line 665, in from_file
    info = mediainfo_json(orig_file)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pydub/utils.py", line 263, in mediainfo_json
    res = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 775, in __init__
    restore_signals, start_new_session)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 1522, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'ffprobe': 'ffprobe'

标签: pythonffmpeg

解决方案


您的 python 执行环境无法找到您的 ffmpeg 安装。因为我只是复制粘贴了你的代码,它就可以工作。

你的错误字面上说No such file or directory: 'ffprobe': 'ffprobe'

还有一个警告:Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work

请检查您的脚本执行的环境。也许 IDLE 正在做某事。尝试通过终端运行您的脚本,您可以在终端中获得ffmpegffprobe作为的输出:

python3 script_file.py


推荐阅读