私はwavファイルのFFTを実行してグラフをプロットし、peak utilsを使ってピークを取得し、その他。一度BPMを取得する方法PythonでFFTとピーク検出を実行しました
私はここから曲のBPM(毎分拍数)を取得するにはどうすればよいですか?
IFFTを実行する必要がありますか?私が仮定しているように、私は時間の文脈に戻る必要がある。あるいは、時間の流れに戻る別の方法がありますか?
私はコードの後ではなく、次のステップの正しい方向にプッシュしたいだけです。
感謝 ジャッキー
私はwavファイルのFFTを実行してグラフをプロットし、peak utilsを使ってピークを取得し、その他。一度BPMを取得する方法PythonでFFTとピーク検出を実行しました
私はここから曲のBPM(毎分拍数)を取得するにはどうすればよいですか?
IFFTを実行する必要がありますか?私が仮定しているように、私は時間の文脈に戻る必要がある。あるいは、時間の流れに戻る別の方法がありますか?
私はコードの後ではなく、次のステップの正しい方向にプッシュしたいだけです。
感謝 ジャッキー
は数秒でピーク距離にピークを測定し、その数で60を分割します。例えば0.5秒ピークツーピーク= 60/0.5 = 120bpm。これは通常のダンスミュージックではある程度は機能しますが、他のタイプのものはあまり良くありません
ごめんなさいあなたの質問を完全に誤解しました。上の例は、あなたが大胆に見えるような波の形でそれを行う方法です。
FFTをそのまま周波数領域に使用します。より低い周波数範囲のピークを探します。音楽が60〜180 bpmの範囲にある場合、これは1〜3 Hzの周波数に対応します。だから、これが答えである場合、あなたはおそらく、あなたが知っておくべき@Vorsprung 2ヘルツ* 60 = 120 BPM
ピークからピークまでの距離を秒単位で測定していただき、ありがとうございます。私はIFFTを実行する必要がありますか?またはFFTデータから利用可能な時間値はまだありますか? –
ああ、ええ、波wavない。はい、私はすでにピークを持っています、これらのピークからBPMを計算するにはどうしたらいいですか? –
ありがとうございますが、複数のピークがあるときはどうしますか?それらの平均をとって、それを60倍してBPM(平均)を求めますか? –
だから、60で乗算BPMにピークの周波数を変換するには、この周波数範囲でピークを
を見ます、それを答えさせてください。 =) – Brett
http://dsp.stackexchange.com/questions/1112/detecting-drum-bpm-in-a-noisy-wav-file – Reti43
あなたのリンクをありがとうございますが、私はまだ何をすべきか分かりませんが、あなたの答えは、 "次に、ドラムビートの長さとおおよそ一致する時定数を使って、信号の時間領域エンベロープを計算します("ロッシーピーク "はこれを行う最も簡単な方法です)。ビット?信号の時間領域エンベロープをどのように計算するのですか?私はすでにピークを検出して見つけたので、 "ロッシーピーク"が必要ですか? –