首先,这里是一个类似问题的链接:Pydub (WindowsError: [Error 2] The system can not find the file specified)虽然在这一个问题是ffmpeg,我通过设置绝对路径解决了。
使用以下任一方法为转换器和/或ffmpeg设置绝对路径后:
AudioSegment.converter = r'C:\ffmpeg\bin'
要么
AudioSegment.ffmpeg = r'C:\ffmpeg\bin'
我仍然收到此错误:
C:\ Program Files \ Python36 \ lib \ site-packages \ pydub \ utils.py:193:RuntimeWarning:找不到ffprobe或avprobe - 默认为ffprobe,但可能无法发出警告(“找不到ffprobe或avprobe - 默认为ffprobe,但可能不起作用“,RuntimeWarning)Traceback(最近一次调用最后一次):文件”C:/Users/Sean/Desktop/vp/encode_audio/m4a_to_wav.py“,第4行,歌曲= AudioSegment.from_file (“pines.m4a”,“m4a”)文件“C:\ Program Files \ Python36 \ lib \ site-packages \ pydub \ audio_segment.py”,第660行,in_file info = mediainfo_json(orig_file)文件“C:\程序文件\ Python36 \ lib \ site-packages \ pydub \ utils.py“,第263行,在mediainfo_json中res = Popen(命令,stdin = stdin_parameter,stdout = PIPE,stderr = PIPE)文件”C:\ Program Files \ Python36 \ lib \ subprocess.py“,第707行,在init restore_signals,start_new_session中)文件”C:\ Program Files \ Python36 \ lib \ subprocess.py“,第990行,在_execute_child startupinfo中)FileNotFoundError:[WinError 2]系统不能找到指定的文件`
我在我的路径envvar中有ffmpeg。我的路径envvar中也有libav,并按照https://github.com/jiaaro/pydub#dependencies指定的顺序安装了libav,然后安装了pydub。
我所做的一切似乎都没有用,所以任何想法或解决方案都将不胜感激!
我有同样的问题。但是我在五分钟前解决了。
这是解决方案:
(¥表示\)
我把文件放入C:\\ffmpeg\\ffmpeg\\bin\\ffmpeg.exe
(注意:我改变文件名后)
from pydub import AudioSegment
AudioSegment.converter = "C:\\ffmpeg\\ffmpeg\\bin\\ffmpeg.exe"
AudioSegment.ffmpeg = "C:\\ffmpeg\\ffmpeg\\bin\\ffmpeg.exe"
AudioSegment.ffprobe ="C:\\ffmpeg\\ffmpeg\\bin\\ffprobe.exe"
在导入句子之后放这些行。
最后,重新启动计算机
我非常喜欢这个问题。但问题现在解决了。
我按照@ user9402680提到的步骤操作,但仍然导致问题。然后我将ffmpeg bin文件路径位置添加到PATH环境变量中。它的工作正常