簡體   English   中英

執行 FFT 和峰值檢測后如何獲得 BPM

[英]How to get the BPM once FFT and peak detection has been performed

我已經對 wav 文件執行了 FFT,繪制了一個圖形,並使用了峰值工具來獲取峰值並一個接一個地打印出來。

我如何從這里獲取歌曲 BPM(每分鍾節拍數)?

我需要執行 IFFT 嗎? 正如我假設我需要回到時間背景。 還是有另一種方法可以回到時間上下文?

我不追求任何代碼,我只想朝着下一步的正確方向推進。

以秒為單位測量峰到峰距離並將 60 除以該數字。 例如 0.5 秒峰峰值 = 60/0.5 = 120 bpm。 這將在一定程度上適用於常規舞曲,但在其他類型上效果不佳

對不起,我完全誤解了你的問題。 以上是如何在波形上進行操作,就像您在大膽中看到的那樣。

使用 FFT,因為它在頻域中。 尋找低頻范圍內的峰值。 如果音樂在 60 到 180 bpm 的范圍內,那么這對應於 1 到 3 Hz 的頻率。 所以尋找這個頻率范圍內的峰值

將峰值頻率轉換為 bpm 乘以 60。所以 2 Hz * 60 = 120 bpm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM