scikits.audiolab不要导入python(numpy.dtype)

时间:2013-11-09 01:09:55

标签: python numpy scikits

我已安装(有很多麻烦)scikits.audiolab用于从数据中发出声音。现在当我输入: import scikits.audiolab我收到以下错误

    >>> import scikits.audiolab
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Python/2.7/site-packages/scikits.audiolab-0.11.0-py2.7-macosx-10.7-intel.egg/scikits/audiolab/__init__.py", line 25, in <module>
    from pysndfile import formatinfo, sndfile
  File "/Library/Python/2.7/site-packages/scikits.audiolab-0.11.0-py2.7-macosx-10.7-intel.egg/scikits/audiolab/pysndfile/__init__.py", line 1, in <module>
    from _sndfile import Sndfile, Format, available_file_formats, \
  File "numpy.pxd", line 30, in scikits.audiolab.pysndfile._sndfile (/private/tmp/easy_install-gKE3i5/scikits.audiolab-0.11.0/scikits/audiolab/pysndfile/_sndfile.c:9632)
ValueError: numpy.dtype does not appear to be the correct type object
  1. 我该如何解决这个问题?
  2. 任何可以完成这项工作的替代方案?

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,对我而言,这是因为安装了另一个(更新的)NumPy版本。

检查您是否安装了不同版本的NumPy并尝试切换回旧版本。就我而言:我有一个系统范围的Python安装和NumPy等常用模块,我无法触及,因为我不是该系统的管理员。因此,当我在本地安装其他一些库时(在~/.local/lib/python2.7/中),它还会安装更新版本的SciPy和NumPy并将它们放入该本地文件夹中。在导入模块时,它会首先从本地目录中绘制,然后再查看使用scikits.audiolab之前工作正常的系统级库。所以对我来说它是通过解决的 pip uninstall numy && pip uninstall scipy因为它只删除了较新的本地版本的numpy。

但更具体的是你的情况,这里是一个教程如何(在Mac上)切换到某个版本的NumPy: multiple numpy version on Mac OS X

我发现为我的scikits.audiolab工作的NumPy版本是1.6.1

>>> import numpy
>>> numpy.version.version
'1.6.1'

希望有所帮助。 :)

答案 1 :(得分:0)

也许您在安装Talkbox之后安装/升级了numpy。尝试运行此命令:

pip install --upgrade --force-reinstall scikits.talkbox

如此处建议: https://github.com/ppwwyyxx/speaker-recognition/issues/13