5

当我尝试使用与模块 librosa 相关的任何内容时,出现错误:

Traceback (most recent call last):
  File "C:\Users\User1\Documents\test3.py", line 36, in <module>
    x, Fs = librosa.load(fn_mp3, sr=None)
  File "C:\Program Files\Python38\lib\site-packages\librosa\core\audio.py", line 129, in load
    with sf.SoundFile(path) as sf_desc:
  File "C:\Program Files\Python38\lib\site-packages\soundfile.py", line 629, in __init__
    self._file = self._open(file, mode_int, closefd)
  File "C:\Program Files\Python38\lib\site-packages\soundfile.py", line 1172, in _open
    openfunction = _snd.sf_wchar_open
AttributeError: cffi library 'C:\Program Files\Python38\lib\site-packages\_soundfile_data\libsndfile64bit.dll' has no function, constant or global variable named 'sf_wchar_open'

在我遇到一些错误之前,我libsndfile64bit.dll在站点包中创建了一个名为_soundfile_datalibsndfile64bit.dll的文件夹并从这里下载,然后将其添加到该文件夹​​中,然后弹出我提供的错误。我曾尝试在 SO 上搜索答案,但没有相关问题,我无法编辑,libsndfile64bit.dll因此我无能为力。我在 Windows OS 64x、Python 3.8 和 librosa 0.7.2 上。

4

4 回答 4

7

我尝试了@Maos Tamir 的答案,但没有
奏效对我有用的是什么:


1.- 打开 anaconda 提示符
2.-激活所需的 venv
如果最初使用 conda 安装:
3.- conda 卸载 librosa
4.-pip 卸载声音文件
5.- pip install librosa 6.-
关闭提示符
7.- 如果使用 jupyter 则重新启动内核笔记本

于 2020-09-25T10:46:31.163 回答
1

请升级声音文件,使用:pip install -U soundfile

于 2020-11-16T05:59:57.417 回答
0

在带有 Python 3.7.9 的 Windows 10 中遇到了同样的问题。尝试手动下载相应的 Windows 滚轮,然后从https://github.com/bastibe/SoundFile/releases/tag/0.10.3post1手动安装

于 2020-09-20T07:35:28.110 回答
0

我也遇到了这个错误,我解决它的方法是实现另一个线程的建议并降级到 python 3.7:

conda create -n p37env python=3.7
conda activate p37env
conda install -c conda-forge librosa

Librosa 应该会自动正确安装声音文件。还要确保如果您使用的是 JupyterLab/JupyterNotebook,请从 python 降级到 python 3.7 的同一环境中打开 JupyterLab/Notebook 会话,我忘了这样做并再次出现错误,直到我意识到它。

前 2 个命令的解决方案的来源:(Unable to install tensorflow using conda with python 3.8

于 2020-11-20T20:29:01.850 回答