BPM & KEY
取扱説明
-
BPM & KEYとは
BPM & KEY は音声ファイルを解析して、テンポ(BPM)と調(キー)を自動で検出するツールです。曲のタグ付けや、DAW に読み込む前の下調べ、DJプレイの選曲などに使えます。
-
使い方
ドロップゾーンに音声ファイルをドロップするか、クリックしてファイルを選ぶだけです。解析が終わると Readout に BPM とキー、信頼度が表示されます。解析はバックグラウンドの Web Worker 上で行われるため、解析中も画面が固まりません。
-
BPM検出の仕組み
まず音の変化の激しさ(オンセット強度)を、フレームごとの周波数成分の変化量から計算します。次に、その変化のパターンが一定間隔で繰り返される周期を自己相関という手法で探し、60〜200BPMの範囲からもっとも当てはまりの良いテンポを選びます。中庸なテンポ(120BPM付近)をやや優先する重み付けをすることで、後述する「倍・半分の誤検出」を減らしています。
-
キー検出の仕組み
音声を周波数分析し、鳴っている音を12音階(ド・ド#・レ…)のどの音に近いかで集計した「クロマグラム」という指紋のようなデータを作ります。倍音(基音の整数倍の周波数)の影響を抑えるため、高い周波数ほど重みを弱めて集計します。
このクロマグラムを、メジャー・マイナー24通りの調性パターン(Krumhansl-Schmuckler の調性プロファイル)と照らし合わせ、もっとも近いものをキーとして採用します。
-
精度の注意
BPM検出はテンポの半分・倍を取り違えることがあります(例: 実際は128BPMの曲を64BPMや256BPMと判定する)。検出値が一般的な曲のテンポ域(70〜160BPM程度)から外れている場合は「倍/半分の可能性」を注記します。キー判定は単調な曲やテンポの遅いバラード、和音が複雑な曲では精度が下がることがあります。
-
解析範囲の目安
探索するテンポの範囲や、倍/半分の注記が出る条件の目安は次のとおりです。
項目 範囲・条件 BPM探索範囲 60〜200 BPM 倍/半分の注記が出る条件 検出値が70〜160 BPMの範囲外 キーの判定候補 メジャー・マイナー ×12音 の24通り -
ユースケース: DJセットの選曲・キーマッチング
手持ちの曲のBPMとキーをまとめて把握しておくと、テンポの近い曲同士をつなげたり、キーの近い曲を選んでミックスしたりする際の下調べに使えます。
-
ユースケース: DAWに読み込む前のタグ付け
サンプルやループ素材をDAWに取り込む前にBPMとキーを確認しておくと、プロジェクトのテンポに合わせるかどうかの判断や、ファイル名・タグへの記録がしやすくなります。
-
仕組み: ブラウザ内処理とプライバシー
解析はブラウザ内のWeb Workerで行われ、ファイルはどこにも送信されません。音声デコードにはWeb Audio APIを使用します。
-
よくある質問
- 判定が実際の曲と違います。
- まず「倍/半分の可能性」の注記を確認してください。それでも違う場合、曲によってはテンポが途中で変化する、あるいは調が転調する箇所があり、解析は曲全体の平均的な傾向から1つの値を出しているため、部分的に一致しないことがあります。
- 対応しているファイル形式は?
- WAV、MP3、FLAC、AAC、OGG など、お使いのブラウザが読み込める一般的な音声ファイル形式に対応しています。
- 解析にどれくらい時間がかかりますか?
- 曲の長さと端末の性能によりますが、数秒〜十数秒程度で完了することが多いです。解析はバックグラウンドのWeb Workerで行われるため、その間も画面は固まりません。
- 信頼度とは何ですか?
- BPM検出の自己相関のピークがどれだけはっきりしていたかを0〜1で表した値です。数値が高いほど、検出されたテンポではっきりとしたビートの繰り返しが見つかったことを意味します。
- キー判定の精度を上げるコツはありますか?
- ボーカルやパーカッションだけの区間よりも、和音がはっきり鳴っているパート(イントロやサビなど)を含む曲のほうが精度が上がりやすい傾向があります。