Unity上で楽曲をテンポ解析してBPMを推定する機能を作ってみました。 使い方 public AudioClip targetClip; private void Start() { int bpm = BpmAnalyzer.AnalyzeBpm(targetClip); Debug.Log("BPMは多分 " + bpm + " くらい"); }AnalyzeBpmの中ではAudioClip.GetData()で取ってきたオーディオのサンプルデータを解析しています。 BpmAnalyzer.cs内で サンプルデータをある程度で区切ってまとめるCreateVolumeArrayメソッドと、 実際にBPMを推定しているSearchBpmメソッドは、 処理時間が結構かかるので別スレッドから呼ぶように変更したほうが良いと思います。 ※コルーチンみたいに使えるThread Ninja(Unit
![[Unity] AudioClipのテンポ解析 : うえすと開発メモ](https://cdn-ak-scissors.b.st-hatena.com/image/square/da78a05937633f7a2b4b2219826151c370cd607b/height=288;version=1;width=512/https%3A%2F%2Fparts.blog.livedoor.jp%2Fimg%2Fusr%2Fcmn%2Fogp_image%2Flivedoor.png)