我正在尝试提取不同音频文件的梅尔频谱图,对于其中的一些我得到以下错误:
回溯(最近通话最近一次):
文件“”,第25行,在script_process_file中 范围,事件,特征RMS = process_file(_file,version = None,output = True,reading = True,cython = False,corr_FIR = None,features_list = featureslist_all,tree_function = Tree_4_0_0,data = data,amplify = None)>
process_file中的文件“ pcm_algorithm / process_file.py”,第111行 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,以频谱图形式显示 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,在pad中 “在
的轴0中反映array
的{}轴中”。格式(轴)) ValueError:没有任何元素可以在array
我使用 256英尺点,其中 128帧重叠和 40 mel_bands 。任何建议都会非常有帮助。
这是给我一个错误的确切代码行:
n_mels = **40**
mel_spec = librosa.feature.melspectrogram(sound,n_fft=**256**,hop_length=**128**,n_mels=n_mels).T