编程语言
首页 > 编程语言> > 调用函数时,Python模块audiolab返回错误

调用函数时,Python模块audiolab返回错误

作者:互联网

我需要为一个研究项目安装Python模块audiolab,并设法安装了该模块并将模块导入Python shell,但在调用模块中最基本的功能之一wavread()时返回了错误. ).

我主要使用的是Python2.7.1,尽管我确实尝试回溯并安装了适用于Python2.6.6的audiolab,但在导入并调用wavread()函数后才发现相同的错误消息.

我的操作系统是带有英特尔处理器的Mac OS X 10.5.8.

通常是这样的:

import numpy                            
import scipy                           
import scikits.audiolab as audio                           
x, fs, nbits = audio.wavread('test.wav')                           

追溯(最近一次通话):

  File "<pyshell#3>", line 1, in <module>                           
    x, fs, nbits = audio.wavread('test.wav')                           
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scikits.audiolab-0.11.0-py2.7-macosx-10.3-                           fat.egg/scikits/audiolab/pysndfile/matapi.py", line 91, in basic_reader                           
    hdl = Sndfile(filename, 'r')                           
  File "_sndfile.pyx", line 488, in scikits.audiolab.pysndfile._sndfile.Sndfile.__init__ (scikits/audiolab/pysndfile/_sndfile.c:4251)                                                      
IOError: error while opening test.wav                           
    ->error while opening file test.wav                           
    -> System error : No such file or directory.                           

我使用pip安装了libsndfile库(我相信音频文件只是一个包装器),而且似乎安装正确,没有错误.然后,我尝试使用Terminal中的python setup.py install命令从tar.gz文件安装audiolab.按照文档中的指示,在标题“ build”下找到here

该文档还讨论了在某些情况下需要制作一个’site.cfg’文件的情况,根据我在Google搜索后看到的内容,该文件仅适用于Windows用户,尽管我不确定.

您能为我的问题提供的任何帮助将不胜感激!

解决方法:

Audiolab文档有所欠缺,但是wavread()需要输入文件.在您的代码中,该输入为test.wav.如果工作目录(通常是python脚本的位置)中不存在该文件,则需要提供该文件的完整路径.

标签:libsndfile,scikits,audio,python,function
来源: https://codeday.me/bug/20191102/1995138.html