1

我拿一首歌曲樣本並對樣​​本執行FFT(快速傅立葉變換)。我能夠獲得歌曲的頻率,但我無法獲得這些頻率出現的時間。所以,它基本上變得毫無用處,因爲我必須將它與不同的樣本進行匹配,除非我得到時間信息。提取出現頻率的時間

我該如何繼續?

+0

不知道你是否找到了答案,但我最近遇到了一個名爲'musicg'的開源聲音API庫。這很簡單,但顯然你會失去一些自己製造一切的自由。儘管如此,我已經做了一些很好的測試。 – 2012-07-04 14:59:56

回答

5

您需要將樣品分解成多個更小的時間片,和FFT每個切片。每個FFT結果都會爲您提供該片段時間內的平均頻率內容。這通常被稱爲一個Spectrogram

+0

簡短,甜美,正是我需要聽到的。 +1 – 2012-07-04 14:58:25

3

的回答你的問題涉及到一個時間頻率權衡,你將不得不決定。爲了得到更小的時間不確定性窗口,分析的時間越短,頻率精度就越粗糙。反之亦然。如果你想要一個確切的頻率,那麼需要時間窗口,因此時間不確定性可能變得無限大。

如果你知道什麼頻段和您感興趣的帶寬,你可以嘗試過濾掉帶,看着它可能有一個開始上升和下降衰減幅度包絡。如果您知道感興趣的聲音包絡的確切形狀,則對匹配濾波器進行卷積可能會爲您提供峯值相關時間點。