当我尝试在 pydub 中打开一个 wave 文件时,它找不到该文件。为什么是这样?
When I try to open a wave file in pydub, it can't find the file. Why is this?
这是终端的样子:
>>> from pydub import AudioSegment
>>> song = AudioSegment.from_wav("E:\sounds\ahh.wav")
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
song = AudioSegment.from_wav("E:\sounds\ahh.wav")
File "C:\Python27\lib\pydub\audio_segment.py", line 534, in from_wav
return cls.from_file(file, 'wav', parameters)
File "C:\Python27\lib\pydub\audio_segment.py", line 505, in from_file
p = subprocess.Popen(conversion_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
File "C:\Python27\lib\subprocess.py", line 710, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 958, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
现在,这个文件肯定存在于我的计算机上,据我所知我正确使用了反斜杠。为什么 Python 找不到它?
仔细查看该回溯 - 未找到的不是您的 WAV 文件,而是未找到的可执行程序(由 conversion_command
引用)。根据 Pydub 文档,WAV 文件不需要外部命令,因此我怀疑您拥有的文件实际上不是有效的 WAV。您可以尝试按照 Pydub 文档中的说明安装其可选依赖项(libav、ffmpeg),以防该文件是不同格式的有效文件。
这是终端的样子:
>>> from pydub import AudioSegment
>>> song = AudioSegment.from_wav("E:\sounds\ahh.wav")
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
song = AudioSegment.from_wav("E:\sounds\ahh.wav")
File "C:\Python27\lib\pydub\audio_segment.py", line 534, in from_wav
return cls.from_file(file, 'wav', parameters)
File "C:\Python27\lib\pydub\audio_segment.py", line 505, in from_file
p = subprocess.Popen(conversion_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
File "C:\Python27\lib\subprocess.py", line 710, in __init__
errread, errwrite)
File "C:\Python27\lib\subprocess.py", line 958, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
现在,这个文件肯定存在于我的计算机上,据我所知我正确使用了反斜杠。为什么 Python 找不到它?
仔细查看该回溯 - 未找到的不是您的 WAV 文件,而是未找到的可执行程序(由 conversion_command
引用)。根据 Pydub 文档,WAV 文件不需要外部命令,因此我怀疑您拥有的文件实际上不是有效的 WAV。您可以尝试按照 Pydub 文档中的说明安装其可选依赖项(libav、ffmpeg),以防该文件是不同格式的有效文件。