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

使用Python pydub模块转换MP3至WAV时出现FileNotFoundError

MP3转WAV格式时pydub报错的解决方法

问题描述

我尝试使用Python的pydub模块将MP3文件转换为WAV格式,但运行代码时出现错误。

我的代码

from pydub import AudioSegment

src = "my_result.mp3"
dst = "final.wav"

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

报错信息

C:\Users\91630\AppData\Local\Programs\Python\Python311\Lib\site-packages\pydub\utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work
  warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)     
C:\Users\91630\AppData\Local\Programs\Python\Python311\Lib\site-packages\pydub\utils.py:198: RuntimeWarning: Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work
  warn("Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work", RuntimeWarning)  
Traceback (most recent call last):
  File "c:\Users\91630\Searches\SciTech Dropbox\meruvu likith\PC\Desktop\python temp\mp3_wav.py", line 6, in <module>
    sound = AudioSegment.from_mp3(src)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\91630\AppData\Local\Programs\Python\Python311\Lib\site-packages\pydub\audio_segment.py", line 796, in from_mp3
    return cls.from_file(file, 'mp3', parameters=parameters)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\91630\AppData\Local\Programs\Python\Python311\Lib\site-packages\pydub\audio_segment.py", line 728, in from_file
    info = mediainfo_json(orig_file, read_ahead_limit=read_ahead_limit)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\91630\AppData\Local\Programs\Python\Python311\Lib\site-packages\pydub\utils.py", line 274, in mediainfo_json
    res = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\91630\AppData\Local\Programs\Python\Python311\Lib\subprocess.py", line 1022, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\Users\91630\AppData\Local\Programs\Python\Python311\Lib\subprocess.py", line 1491, in _execute_child
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [WinError 2] 系统找不到指定的文件

问题原因

pydub本身不处理音频编码解码,依赖ffmpeg工具完成底层的音频格式转换工作。报错中的警告已经明确提示找不到ffmpeg或ffprobe,最终导致系统无法启动对应进程,抛出FileNotFoundError。

解决步骤

  • 下载ffmpeg
    前往ffmpeg官方平台下载适配Windows系统的压缩包,解压到本地任意目录(例如C:\ffmpeg)。
  • 配置系统环境变量
    打开系统属性→高级→环境变量,在系统变量的Path中添加ffmpeg解压目录下的bin文件夹路径(例如C:\ffmpeg\bin)。添加完成后重启命令行或IDE,确保环境变量生效。
  • 验证配置
    打开命令提示符,输入ffmpeg -version,若能正常显示ffmpeg的版本信息,说明配置成功。
  • 重新运行代码
    再次执行你的Python代码,即可完成MP3到WAV的格式转换。

内容的提问来源于stack exchange,提问作者KARTX LEGEND YT

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 00:25:12