这是一个pydub 包的开发错误;中文环境里面的解决方案几乎都是胡说八道,我查看了pydub的代码后,给出如下解决方案,亲测有效。我的环境是 python3.6 pydub 0.23.1
这个问题首先是由于ffmpeg造成的
1. 下载而不是直接安装ffmpeg
下载地址是(http://ffmpeg.org/),这里需要注意的是下载ffmpeg的exe文件,而不是直接下载source code ,更不是使用pip install ffmpeg
2. 下载完成后,将exe文件解压到自定义位置,同时进入其bin子文件查看是否有ffmpeg.exe ffprobe.exe 以及ffplay.exe 在运行过程中需要使用前两者的路径
按照下面方式即可完成正常使用不会报错
测试代码如下:
from pydub import silence, AudioSegment
from pathlib import Path
import os, sys
import matplotlib.pyplot as plt
print (sys.version)
#AudioSegment.ffmpeg = os.getcwd()+"\\ffmpeg\\bin\\ffmpeg.exe"
AudioSegment.converter = r"D:\Program Files\ffmpeg-20200401-afa5e38-win64-static\bin\ffmpeg.exe"
AudioSegment.ffprobe = r"D:\Program Files\ffmpeg-20200401-afa5e38-win64-static\bin\ffprobe.e