我是靠谱客的博主 微笑小丸子,最近开发中收集的这篇文章主要介绍Python AudioSegment winError 2 The system cannot find the file specified(winError2 找不到系统文件),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这是一个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 Filesffmpeg-20200401-afa5e38-win64-staticbinffmpeg.exe"
AudioSegment.ffprobe   = r"D:Program Filesffmpeg-20200401-afa5e38-win64-staticbinffprobe.exe"

#print (AudioSegment.converter)
#print (AudioSegment.ffprobe)

my_file = Path(r"G:DataSet2019PMEmo2019chorus1.mp3")



audio = AudioSegment.from_mp3(my_file)    # solves ***[WinError2]*** issue.

给出一张我的代码运行的截图,表明使用正常

------------------------------------------------------------------------------------------------------------------------------------------------------------

如果走到这一步还是报错,那么可能的原因是pycharm的版本以及pydub版本问题,通用的办法是将ffmpeg.exe 以及ffprobe.exe直接拷贝放到这个项目路径下即可

最后

以上就是微笑小丸子为你收集整理的Python AudioSegment winError 2 The system cannot find the file specified(winError2 找不到系统文件)的全部内容,希望文章能够帮你解决Python AudioSegment winError 2 The system cannot find the file specified(winError2 找不到系统文件)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部