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

Conda环境已装FFmpeg仍报[Errno 2]找不到ffprobe错误求助

解决[Errno 2] No such file or directory: 'ffprobe'错误

问题根源

你使用的pydub库依赖ffprobe工具解析音频文件,虽然Conda环境中已安装FFmpeg,但pydub无法自动定位到ffprobe的路径,导致报错。

解决方案

1. 定位Conda环境中ffprobe的路径

激活你的Conda环境后,执行对应命令获取路径:

  • Linux/macOS:
    which ffprobe
    
  • Windows(命令提示符):
    where ffprobe
    

返回示例:

  • Linux:/home/xxx/miniconda3/envs/your_env/bin/ffprobe
  • Windows:C:\Users\xxx\miniconda3\envs\your_env\Library\bin\ffprobe.exe

2. 在代码中指定ffprobe和ffmpeg路径

在调用AudioSegment前,添加路径配置代码:

from pydub import AudioSegment

# 替换为你实际获取到的路径
AudioSegment.converter = "/path/to/conda/env/bin/ffmpeg"
AudioSegment.ffprobe = "/path/to/conda/env/bin/ffprobe"

Windows示例:

AudioSegment.converter = r"C:\Users\xxx\miniconda3\envs\your_env\Library\bin\ffmpeg.exe"
AudioSegment.ffprobe = r"C:\Users\xxx\miniconda3\envs\your_env\Library\bin\ffprobe.exe"

3. 补充:修复音频下载逻辑

你的代码当前存在逻辑错误:response.content是API返回的JSON数据,并非音频文件。需要从API响应的JSON中提取音频URL,单独下载音频:

import io
from pydub import AudioSegment

# 从API返回的data中提取音频URL(替换为实际字段名)
audio_url = data['audio_url']
audio_response = requests.get(audio_url)

# 加载音频文件
song = AudioSegment.from_file(io.BytesIO(audio_response.content), format='mp3')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 11:01:58