当我尝试在pydub中打开wave文件时,它无法找到该文件。为什么是这样?

时间:2017-04-26 19:13:00

标签: python pydub

这是终端的样子:

>>> 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无法找到它?

1 个答案:

答案 0 :(得分:2)

仔细看看那个追溯 - 它不是你找不到的WAV文件,它是一个找不到的可执行程序(由conversion_command引用)。根据Pydub文档,WAV文件不需要外部命令,因此我怀疑你拥有的文件实际上并不是有效的WAV。您可以尝试按照Pydub文档中的说明安装其可选依赖项(libav,ffmpeg),以防该文件是不同格式的有效文件。