将 window 函数应用于 librosa 中的框架

Applying a window function to a frame in librosa

我目前正在开发一个 ASR 系统,但我忘记为每一帧应用一个 window 函数。我正在提取,这可能是我收到不良结果的原因。但这在 librosa 中可能吗?

我在 librosa 文档中找不到这个选项。

我需要对每一帧应用汉明 window,这些帧就是这样提取的。

   for fp in file_paths:
        y,sr = librosa.load(fp,sr=16000)
        X = librosa.util.frame(y, frame_length=400, hop_length=160)

Librosa 雇佣了 scipy.signal:

window = scipy.signal.hann(win_length, sym=False)

# Reshape so that the window can be broadcast
window = window.reshape((-1, 1))

windowed = fft_window * X

Here 你可以在 librosa 中看到它是如何完成的。

但为什么不使用 librosa.stftlibrosa.mfcc?它会做你需要的一切。