
2025/12/30 11:43
**Ableton MCP の実験**
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
著者は、LLM(大規模言語モデル)がAbleton Liveのペアプログラマとして機能し、自動化ツールと完全なマッシュアップワークフローを迅速に作成できることを示しています。
単一の休日休暇中に70以上のカスタムツール呼び出しと動作するマッシュアップデモを構築しました。
.alsファイル形式を逆解析して、欠落していた機能(テンポ/ボリュームオートメーション、ワープマーカー)を追加し、vocal_to_midi() のような高レベルのヘルパーも導入しました。また、2つの Replicate エンドポイント ―
jhurliman/allinone-targetbpm(テンポ分析用)と jhurliman/music-flamingo(音楽理論生成用)をデプロイし、それらをワークフローに統合しました。Max4Live パッチに切り替え可能な WAV レコーダーを追加して、オーディオ出力をプログラムでキャプチャできるようにしました。マッシュアップは Deft & Lewis James – Octo(インストゥルメンタル)と GloRilla – Yeah Glo!(ボーカル)から構築され、テンポ/キーの修正、プレイリスト生成、および LLM ガイド付き Ableton チュートリアルを経て反復しました。SoundCloud にアップロードし、不具合を指摘・修正・再圧縮して第三版をリリースした結果、LLM ペアプログラマが Ableton および DAW ワークフローの学習を加速できることが実証されました。
コード、ワークフロードキュメント、およびプルリクエストは
jhurliman/ableton-mcp/pull/1 で入手可能です。本文
私は休暇中にAbletonとMCP(マイクロサービス・プロトコル)を試し、70以上のオートメーションツール呼び出しとミャッシュアップ曲を作成しました:
https://soundcloud.com/jhurliman/octo-glo
ableton-mcp の発見
Abletonのオートメーション機能を調べている際に、ahujasid/ableton‑mcp を見つけました。これはコミュニティで文書化されたPython API経由でツール呼び出しLLMとAbleton Liveを橋渡しするMCPサーバーです。
Claude Codeをダウンロードし、Opus 4.5に切り替えて AbletonMCP をインストールさせ、次にAbletonを起動しました。
標準装備であれば、Sessionビューの基本的な作成・編集は十分でしたが、Arrangementビューやデバイス・チェーン、ミキシング、その他多くの「実際のDAW」ワークフローには対応していませんでした。
ableton‑mcp の拡張
楽しい部分は、現代のLLMがドキュメントを検索し、新しいMCPツールを追加・テストしながらほぼ閉じたループで反復できる点です。
Python APIに露出されていないAbleton機能については、Opus 4.5 が
.als ファイル形式の十分な逆解析を行い、テンポ/ボリュームオートメーションやワープマーカーを注入することができました。
低レベルの配管が整ったら、より高レベルのツール構築に挑戦しました。例えば
vocal_to_midi() は以下です:
- ボーカルトラックの音声を解析し、
- 発音開始点を大まかなフォニームクラスへ分類し、
- それらのフォニームカテゴリを標準的な Drum Rack MIDI ノートにマッピングします。
目的は「ボーカルからドラムを作る」よりも、ドラムグルーヴとボーカルを合わせる際の微小なフェーズ・タイミング調整を助ける構造化された表現を得ることでした。
LLM に耳を与える
より良いツールでも、多くの試行は一発限り、または人間が緊密に関与する必要がありました。
核心的な制約は明らかでした:モデルは自分が何をしているか「聞けない」ことです。
これを解決すべく、Max4Live パッチでシンプルな WAV ファイルレコーダーを作成し、オン/オフ切替可能にしました。これはAbletonから音声を取得する唯一のプログラム的手段と見えました。
次に2つの Replicate エンドポイントをデプロイ:
- jhurliman/allinone‑targetbpm –
のフォークで、トラックの構造解析結果を返します。mir-aidj/all-in-one
フォークでは
とmin_bpm
を公開し、私はmax_bpm
を好むので遅いトラックは2倍にカウントされます。[91, 181] - jhurliman/music-flamingo – 音声+プロンプトを受け取り、音楽理論知識で微調整されたモデルからテキスト出力を返します。
これらを使ったクローズドループのエージェント化反復はまだ深く検証していませんが、現在までに有用な構築ブロックとして機能しています。
実際のミャッシュアップ作成
多くのツールを接続した上で、「クリップ編集」や「EQ調整」以上の複雑なものを試みました。
好きなインストゥルメンタルベーストラック、Deft & Lewis James – Octo から始め、テンポ(オンラインでは誤記載が多い)とキーを決定し、候補となるボーカルマッチのプレイリストを依頼して約12曲ほど聴き比べました。
- GloRilla – Yeah Glo! がすぐに興味深い組み合わせに思えました。
2日間の自動化と手作業、LLMによる「AbletonでXをやる方法」チュートリアルを通じて、アップロードしたくなるような作品が出来上がりました [1]。
学び
Ableton、ミャッシュアップ制作、そしてDAW全般についてはまだ表面に触れただけです。
しかし AbletonMCP を使って数日間で得られたAbletonへの理解は、数週間のブログやYouTubeよりも多かったです。
DAW用のペアプログラマがいることで、自分一人でゼロから完成品に至る自信がつき、少なくとも学習初期段階では実際に役立ちました。
この実験中に生成されたすべてのコードと、ミャッシュアップ作成時に使用した粗いワークフローのドキュメントは https://github.com/jhurliman/ableton-mcp/pull/1 で公開しています。
[1] アップロード直後に複数の疑問点を発見し、修正に戻りました。その後、最終的なコンプレッサーとトラックボリュームを再マスタリングする必要があると判断。3回目のアップロードで完了です。