Python librosa NoBackendError 即使安装了 ffmpeg
Python librosa NoBackendError even though ffmpeg is installed
我最近使用 Windows 10 运行ning 在我的新 PC 上安装了 librosa(我已经在不同 PC 上使用了一段时间的软件包)。之后我下载了最新的 ffmpeg 静态版本并将其复制到 C:
并将其添加到路径中。测试了 ffmpeg,它就像一个魅力!对于 python,我正在使用 Anaconda 环境,在启动 Jupyter Notebook 和 运行ning librosa.load(path, sr = None)
之后,我得到了
<ipython-input-3-1e009e0ae576> in <module>
----> 1 audio = librosa.load(pathToJson)
~\anaconda3\envs\tf_gpu\lib\site-packages\librosa\core\audio.py in load(path, sr, mono, offset, duration, dtype, res_type)
117
118 y = []
--> 119 with audioread.audio_open(os.path.realpath(path)) as input_file:
120 sr_native = input_file.samplerate
121 n_channels = input_file.channels
~\anaconda3\envs\tf_gpu\lib\site-packages\audioread\__init__.py in audio_open(path, backends)
114
115 # All backends failed!
--> 116 raise NoBackendError()
NoBackendError:
是不是很奇怪?然后我在互联网上到处走走,做了一些尝试修复它的事情,然后我想到了 运行 我在 anaconda 命令界面中的代码行并且它有效?这怎么可能?这是相同的环境。
python
Python 3.7.7 (default, Mar 23 2020, 23:19:08) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import librosa
>>> librosa.load('test.wav')
(array([-0.00027 , -0.00039953, -0.0003659 , ..., -0.16393574,
-0.17814247, 0. ], dtype=float32), 22050)
我做了很多测试,我真的更喜欢我的 Jupyter,所以我们将不胜感激。我尝试了以下操作:我已将 C:\ffmpeg\bin
和 C:\ffmpeg
添加到用户和系统变量的路径中。之后,我为 ffmpeg 和 ffmpeg_bin 为用户和系统变量创建了特定变量。没运气。之后我尝试使用 conda 安装 ffmpeg,但没有成功。我测试的最后一件事是:
import audioread
audioread.ffdec.FFmpegAudioFile('test.wav')
那行得通。谢谢
你有这行代码:
audio = librosa.load(pathToJson)
在我看来,您不小心试图用 librosa 加载 JSON 文件。检查 :D
我最近使用 Windows 10 运行ning 在我的新 PC 上安装了 librosa(我已经在不同 PC 上使用了一段时间的软件包)。之后我下载了最新的 ffmpeg 静态版本并将其复制到 C:
并将其添加到路径中。测试了 ffmpeg,它就像一个魅力!对于 python,我正在使用 Anaconda 环境,在启动 Jupyter Notebook 和 运行ning librosa.load(path, sr = None)
之后,我得到了
<ipython-input-3-1e009e0ae576> in <module>
----> 1 audio = librosa.load(pathToJson)
~\anaconda3\envs\tf_gpu\lib\site-packages\librosa\core\audio.py in load(path, sr, mono, offset, duration, dtype, res_type)
117
118 y = []
--> 119 with audioread.audio_open(os.path.realpath(path)) as input_file:
120 sr_native = input_file.samplerate
121 n_channels = input_file.channels
~\anaconda3\envs\tf_gpu\lib\site-packages\audioread\__init__.py in audio_open(path, backends)
114
115 # All backends failed!
--> 116 raise NoBackendError()
NoBackendError:
是不是很奇怪?然后我在互联网上到处走走,做了一些尝试修复它的事情,然后我想到了 运行 我在 anaconda 命令界面中的代码行并且它有效?这怎么可能?这是相同的环境。
python
Python 3.7.7 (default, Mar 23 2020, 23:19:08) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import librosa
>>> librosa.load('test.wav')
(array([-0.00027 , -0.00039953, -0.0003659 , ..., -0.16393574,
-0.17814247, 0. ], dtype=float32), 22050)
我做了很多测试,我真的更喜欢我的 Jupyter,所以我们将不胜感激。我尝试了以下操作:我已将 C:\ffmpeg\bin
和 C:\ffmpeg
添加到用户和系统变量的路径中。之后,我为 ffmpeg 和 ffmpeg_bin 为用户和系统变量创建了特定变量。没运气。之后我尝试使用 conda 安装 ffmpeg,但没有成功。我测试的最后一件事是:
import audioread
audioread.ffdec.FFmpegAudioFile('test.wav')
那行得通。谢谢
你有这行代码:
audio = librosa.load(pathToJson)
在我看来,您不小心试图用 librosa 加载 JSON 文件。检查 :D