DJ 解析
Crateforge は 純 Rust の DSP で DJ 向けの音声解析を行います。 外部ツールに依存せず、BPM / Key (Camelot) / Energy / ラウドネス と類似度ベクトルを推定します。
画像は後日追加
何が解析されるか
Section titled “何が解析されるか”| 指標 | 内容 |
|---|---|
| BPM | テンポを自動検出。つなぎやすい曲を把握できます。 |
| Key (Camelot) | ハーモニックミックス向けに、調を Camelot 表記(例 8A)で表示します。 |
| Energy | 曲の勢いを数値化。セットの流れを設計できます。 |
| ラウドネス | 音量レベル。実波形の描画や正規化に使われます。 |
| 類似度ベクトル | 似た雰囲気の曲を手繰り寄せるための内部表現。 |
解析結果のうち Key / Energy はトラックテーブルの列として表示でき、Now Playing にも表示されます。
Key の表記と手動上書き
Section titled “Key の表記と手動上書き”- 表記の切替 — 設定 → 一般 → 「Key 表記」 で、Key の表示を
Camelot(
8A)/ Open Key(1m)/ Classic(Am/F#m)から選べます。 変わるのは表示だけで、保存値・互換判定・検索は Camelot のままです。検索はどの表記でも書けます(key:8A/key:1m/key:Amは同じキーに一致)。 - 手動上書き — 解析の Key が違うときは、曲の編集(Get Info /
Ctrl + I)の Key 欄で正しいキーを選べます。 上書きは解析値とは別に保存され、再解析しても消えません。「解析値を使う(上書きなし)」を選ぶと上書きを解除します。 上書きした Key はトラックテーブルで*付きで表示されます。 - 上書きがある曲は、表示・検索(
key:/key:compat:)・スマートプレイリスト・Similar・Set Lint・ ファイルタグ(InitialKey)の書き戻しのすべてで 上書き値 が使われます。
いつ解析されるか
Section titled “いつ解析されるか”解析は「よく使う曲」だけをバックグラウンドで行います。次のいずれかがきっかけになります。
- 曲を 再生 したとき
- 右クリック → 「Analyze」 を実行したとき
解析済みの BPM / Key は、曲を編集したときに 実ファイルのタグにも書き出されます (BPM と InitialKey。詳しくはライブラリ取り込みを参照)。
進捗はツールバーに表示されます。ライブラリ全曲を一度に解析するのではなく、 実際に使う曲に絞って解析することで、無駄なく動きます。
類似度選曲(Similar Digging)
Section titled “類似度選曲(Similar Digging)”右レールの Similar タブで、解析値をもとにした「次の一手」を提案します。
- 曲を右クリック → 「Find similar」(または
Ctrl/Cmd + Shift + S)で、 Camelot キー互換 + テンポ近接 の候補を表示します。 - 基準曲は「選択中の曲」「再生中の曲」から選べ、ピンを解除すると再生中の曲に追従します。
掘り進める(履歴)
Section titled “掘り進める(履歴)”候補の行から 「この曲を基準に掘る」 を選ぶと、その曲を新しい基準にして掘り進められます。
- Back / Forward と パンくず でセッション中の基準曲の履歴を行き来できます。 パンくずをクリックするとその時点へジャンプします(履歴は Clear でリセットされます)。
なぜ似ているか(reason チップ)
Section titled “なぜ似ているか(reason チップ)”各候補には、基準曲との関係を示すチップが付きます。
- Key — 候補の Camelot キー(基準と違う場合は
8A → 9Aのように表示) - BPM — 基準との差(
BPM +1.5/BPM -2.0%など) - Energy — 基準との差(
Energy +0.08など) - Harmonic — ハーモニックに互換なキーであること
- d= — 類似度ベクトルの距離
絞り込み(フィルタ)
Section titled “絞り込み(フィルタ)”- Harmonic — Camelot 互換キーのみ(BPM フィルタとは独立して効きます)
- BPM 許容差 — 基準比での許容範囲
- Energy close — Energy 差 0.15 以下のみ
- クレート内を除外 / 同じアーティストを除外 / ★★★ 以上のみ
これらの絞り込み条件は保存され、次回起動時にも引き継がれます。
各行から Preview(試聴)/ この曲を基準に掘る / 次に再生 / Crate に追加 が行えます。 候補は Crate へドラッグ&ドロップでも追加でき、ダブルクリックでプレビューできます。 すべて追加済みなら「Add all」は “All added” で無効化されます。
検索フィルタ構文
Section titled “検索フィルタ構文”解析値は検索でも絞り込めます(テキスト検索や他のフィールド指定と AND 結合)。
bpm:120-128key:8Akey:compat:8Aenergy:60-100analyzed:nobpm:は単一値だと ±2 の幅で拾い、解析値を優先します(無ければ曲の BPM タグ)。key:compat:8Aは 8A とハーモニックに繋がるキー(8A / 8B / 7A / 9A)をまとめて絞り込みます。 基準キーはどの表記でも書けます(key:compat:1m/key:compat:Am)。判定は Similar タブと同じロジックなので、両者の結果はズレません。energy:は 0〜1 でも 0〜100 でも書けます。analyzed:yes/analyzed:noで解析済み / 未解析を切り分けられます。
アーティストや年・レーティングでの絞り込みも含めた全体は、検索構文を参照してください。
スマートプレイリスト・AI 選曲との連携
Section titled “スマートプレイリスト・AI 選曲との連携”- スマートプレイリスト の条件に BPM / Key / Energy を使えます。
- 内蔵 API サーバー は解析結果や類似曲も返すため、dj-curator などの AI 選曲が解析値をボーナスとして活用できます。