首页 > 解决方案 > ValueError:调用 librosa.feature.melspectrogram 时,没有任何元素反映在“数组”的轴 0 中

问题描述

我正在尝试为不同的音频文件提取梅尔频谱图,其中一些我收到以下错误:

回溯(最近一次通话最后):

文件“”,第 25 行,在 script_process_file 边界、事件、特征中,RMS = process_file(_file,version=None,output=True,reading=True,cython=False,corr_FIR=None,features_list = features_list_all, tree_function =Tree_4_0_0,data =数据,放大=无)

文件“pcm_algorithm/process_file.py”,第 111 行,在 process_file mel_spec = librosa.feature.melspectrogram(sound,n_fft=256,hop_length=128,n_mels=n_mels).T

文件“/usr/local/lib/python2.7/dist-packages/librosa/feature/spectral.py”,第 1388 行,在 melspectrogram power=power 中)

文件“/usr/local/lib/python2.7/dist-packages/librosa/core/spectrum.py”,第 1179 行,在 _spectrogram S = np.abs(stft(y, n_fft=n_fft, hop_length=hop_length)) **力量

文件“/usr/local/lib/python2.7/dist-packages/librosa/core/spectrum.py”,第 160 行,在 stft 中 y = np.pad(y, int(n_fft // 2), mode=pad_mode )

文件“/usr/local/lib/python2.7/dist-packages/numpy/lib/arraypad.py”,第 1420 行,在“.format(axis) 的轴 {} 中的 pad”中,arrayValueError:没有在轴 0 中反映的任何元素array

我使用256 fft 点128 帧重叠40 mel_bands。任何建议都会非常有帮助。

这是给我一个错误的确切代码行:

n_mels = **40**

mel_spec =  librosa.feature.melspectrogram(sound,n_fft=**256**,hop_length=**128**,n_mels=n_mels).T

标签: pythonmellibrosa

解决方案


推荐阅读