ParameterError: данные должны иметь тип numpy.ndarray (при использовании Librosa)

Я пытаюсь использовать библиотеку Librosa (Python 3.x) впервые для извлечения функций из нескольких аудиофайлов в формате WAV. Я сталкиваюсь с проблемой, в которой говорится, что данные должны иметь тип numpy.ndarray, даже если они этого типа. Вот мой код:

mylist - это список всех аудиофайлов wav в моем каталоге.

import os
import librosa
mylist= os.listdir('RawData/')

for y in mylist:
   X, sample_rate = librosa.load('RawData/'+y, res_type='kaiser_fast')
   print(type(sample_rate))
   sample_rate = np.array(sample_rate)
   print(type(X))
   print(type(sample_rate))
   mfccs = np.mean(librosa.feature.mfcc(x=X, sr=sample_rate, n_mfcc=40),axis=0)

И это вывод и ошибка, которая выскакивает:

class 'int'

class 'numpy.ndarray'

class 'numpy.ndarray'

ParameterError                            Traceback (most recent call last)
ipython-input-23-817ec793d6c4 in module()
  7     mfccs = np.mean(librosa.feature.mfcc(x=X, 
  8                                          sr=sample_rate,
----> 9                                          n_mfcc=40),
 10                     axis=0)
 .
 .
 .
 ParameterError: data must be of type numpy.ndarray

Любая помощь приветствуется

1 ответ

Решение

Вы, возможно, хотели сказать librosa.feature.mfcc (y = X,

https://librosa.github.io/librosa/generated/librosa.feature.mfcc.html

Другие вопросы по тегам