"Нет ошибки серверной части" при чтении файлов в Python
Я пытаюсь выполнить STFT для нескольких звуковых файлов и получаю эту ошибку. Путь к файлам, которые я пытаюсь выполнить STFT, правильный, но все же я получаю эту ошибку.
import librosa
import io
import numpy as np
import tensorflow as tf
import os
import glob
path_te = "C:\Users\aanum\OneDrive\Documents\Deep Learning\timit-homework\te"
files = os.listdir(path_te)
for file in sorted(files):
if file.startswith("tex"):
file_path = path_te2 + "/" + file
#file_path = 'r' + "'" + str(file_path) + "'"
print(file_path)
st, sr=librosa.load(file_path, sr=None)
Выход:
C:/Users/aanum/OneDrive/Documents/Deep Learning/timit-homework/te/tex0000.wav
---------------------------------------------------------------------------
NoBackendError Traceback (most recent call last)
<ipython-input-54-4df25548d204> in <module>
7 #file_path = 'r' + "'" + str(file_path) + "'"
8 print(file_path)
----> 9 st, sr=librosa.load(file_path, sr=None)
10 X=librosa.stft(st, n_fft=1024, hop_length=512)
11 X_abs = abs(X)
~\Anaconda3\envs\DeepLearning\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\DeepLearning\lib\site-packages\audioread\__init__.py in audio_open(path, backends)
114
115 # All backends failed!
--> 116 raise NoBackendError()
NoBackendError
Может ли кто-нибудь сказать мне, почему у меня эта ошибка?
3 ответа
Убедитесь, что ваш .wav
файл не поврежден. Можете ли вы открыть файл с помощью программы для чтения аудиофайлов (которая может читать файлы WAV)? В противном случае ваш файл поврежден. Если вы загрузили аудиофайлы из набора данных с открытым исходным кодом, возможно, они были повреждены при распаковке папки вручную. Я рекомендую вам снова загрузить набор данных и разархивировать его с помощью инструмента командной строки.
Эта ошибка может возникнуть, когда Librosa не может загрузить файл, в основном потому, что librosa не может прочитать формат файла (например, формат mp3) и пытается найти другие серверные модули, такие как ffmpeg. Итак, установка ffmpeg может помочь в решении этой проблемы. Кроме того, в зависимости от используемой ОС, в некоторых случаях может потребоваться добавить ffmpeg в путь ОС. Если проблема на самом деле связана с форматом файла, правильная установка ffmpeg может решить проблему.
Сразу после того, как вы напишете строку import usb.core, вам нужно написать import usb.backend.libusb1. Надеюсь, это вам помогло, скажите, если не сработает!