You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让pydub找到ffmpeg?Python导入运行报错求助

解决pydub无法定位ffmpeg及文件路径错误的方案

一、解决ffmpeg无法定位的问题

你安装的ffmpeg-python只是Python绑定库,必须下载ffmpeg的二进制可执行文件才能让pydub正常工作,按以下步骤操作:

  • 下载对应Windows版本的ffmpeg压缩包,解压到固定目录(比如C:\ffmpeg)
  • 无需修改系统PATH,直接在代码中指定ffmpeg路径:在导入pydub后添加一行代码:
    pydub.AudioSegment.converter = r"C:\ffmpeg\bin\ffmpeg.exe"
    
  • 验证:打开命令提示符,输入ffmpeg -version,能输出版本信息说明路径配置正确

二、解决文件路径无效的错误

报错中的OSError: [Errno 22] Invalid argument是路径格式或实际路径有误导致的:

  • 把代码中的占位符*redacted*替换成你的真实用户名
  • 使用Windows兼容的路径格式:
    要么用原始字符串(前面加r):
    trumpet = AudioSegment.from_mp3(r"C:\Users\你的真实用户名\Downloads\trumpet-e4-14829.mp3")
    
    要么用双反斜杠:
    trumpet = AudioSegment.from_mp3("C:\\Users\\你的真实用户名\\Downloads\\trumpet-e4-14829.mp3")
    
  • 确认文件确实存在于该路径,检查文件名(包括后缀)是否拼写正确

修正后的完整代码示例

import pydub
from pydub import AudioSegment

# 指定ffmpeg路径
pydub.AudioSegment.converter = r"C:\ffmpeg\bin\ffmpeg.exe"

# 使用正确的文件路径
trumpet = AudioSegment.from_mp3(r"C:\Users\你的真实用户名\Downloads\trumpet-e4-14829.mp3")
pydub.playback.play(trumpet)

内容的提问来源于stack exchange,提问作者Isaac Howse

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 11:07:33