ClaudeでSoundFontを編集する
Polyphoneには、Model Context Protocol(MCP)に対応したサーバーが組み込まれています。MCPは、AIアシスタントがほかのソフトウェアを使えるようにするための標準規格です。 このサーバーを有効にすると、ClaudeのようなアシスタントがPolyphoneで開いているSoundFontを扱えるようになります。やりたいことをふだんの言葉で伝えるだけで、アシスタントがSoundFontを調べ、編集し、Polyphoneのツールを使い、その結果を測定します。
すべての変更はすぐにエディターに表示され、自分で操作したときと同じように元に戻せます。 このチュートリアルでは、ClaudeをPolyphoneに接続する方法を説明し、続いて依頼の例を、結果を聴けるオーディオファイルとともに紹介します。
アシスタントにできること
アシスタントは、Polyphoneで開いているものすべてにアクセスできます。
- 閲覧:SoundFont、そのサンプル、インストゥルメント、プリセット、各ディビジョンのパラメーター、そしてツリーで選択されている要素(「このサンプル」や「選択したインストゥルメント」と言えば通じます)
- 編集:要素の作成、名前の変更、複製、削除、パラメーター、キー範囲とベロシティ範囲、ループポイント、モジュレーターの変更など
- ツール:ツールメニューのほとんどのツール(自動ループ、音量変更、サンプル自動配置、自然なリリースなど)
- 音の分析:ラウドネス、ピッチ、倍音、アタック、ループの品質などの測定と、シンセサイザーで鳴らしたノートのレンダリング
分析機能は欠かせません。アシスタントは音を聴くことができないからです。 その代わりに、エンジニアがスペクトラムアナライザーを読むように、変更の前後で音を測定します。 そのため、ループでクリックノイズが出ないこと、ノートの音程が合っていること、音量がキーボード全体でそろっていることを確認できます。ただし、最終的に判断するのはあなたの耳です。
アシスタントによる変更は、どれもSoundFontの履歴の1ステップになり、Polyphoneで Ctrl+Z を押せば元に戻せます。 アシスタントに保存を頼むか、自分で保存するまで、ディスクには何も書き込まれません。
準備
Polyphoneでサーバーを有効にする
設定を開き、AIアシスタント のセクションに移動します。 AIアシスタントに開いているSoundFontへのアクセスを許可する をオンにすると、その下の行にサーバーのアドレスが表示されます。デフォルトは http://127.0.0.1:8642/mcp です。 ポート8642がすでにほかのソフトウェアで使われている場合は、ポート で別の番号を選んでください。
サーバーは、自分のコンピューターからの接続しか受け付けません。 同じページには、アシスタントに提供されるすべての機能が、閲覧、編集、ツール、音の分析 の4つのカテゴリーに分けて一覧表示されます。
Claude Codeを接続する
Claude Code は、Anthropicが開発したターミナルで動くアシスタントです(VS CodeとJetBrainsのエディター向けの拡張機能もあります)。 インストールしたら、Polyphoneの設定に表示されているコマンドを コピー ボタンでコピーし、ターミナルで実行します。
claude mcp add --transport http polyphone http://127.0.0.1:8642/mcp
デフォルトでは、Claude Codeがこのサーバーを使うのは、このコマンドを実行したフォルダーから起動したときだけです。
どのフォルダーからでもPolyphoneを使えるようにするには、オプション --scope user を追加します。
claude mcp add --scope user --transport http polyphone http://127.0.0.1:8642/mcp
その後、Claude Codeの新しいセッションを開始します。Polyphoneの機能はセッションの開始時に読み込まれるため、その時点でPolyphoneがサーバーを有効にした状態で開いている必要があります。
Claude Codeでコマンド /mcp を使うと、サーバー「polyphone」が接続されているかどうかを確認できます。
アシスタントがPolyphoneの機能を初めて使おうとするとき、Claude Codeは許可を求めてきます。その機能について次回から確認しないように選ぶこともできます。
注意: HTTPトランスポートでMCPに対応しているほかのアシスタントも、同じアドレスに接続できます。
最初の質問
まずは簡単な質問から始めて、アシスタントがどのようにSoundFontを調べるかを見てみましょう。
- 「Polyphoneで開いているSoundFontはどれですか?」
- 「このSoundFontには何が入っていますか?どのインストゥルメントにも使われていないサンプルはありますか?」
- 「プリセットの一覧を、バンク番号とプリセット番号つきで出してください。」
Polyphoneのツリーで要素を選択しておくと、アシスタントはそれを指して話を理解できます。たとえば 「選択したサンプルの音量を6 dB下げてください」 や 「これらのインストゥルメントの名前に『Organ』という接頭辞を付けてください」 のように頼めます。 小さな変更なら、結果はすぐにエディターに表示されます。
例:インストゥルメントを点検して修正する
たくさんのサンプルでインストゥルメントを作っていると、間違いはすぐに入り込みます。しかも、少しだけ音程のずれたノート、隣より少しだけ大きいサンプル、数秒たってからようやくクリックノイズが出るループなど、気づきにくいものもあります。 アシスタントなら、インストゥルメント全体を数秒で点検できます。
自分で試すには、flute-with-mistakes.sf2 をダウンロードしてPolyphoneで開いてください。 このファイルには、わざといくつかの間違いを入れたフルートのインストゥルメントが入っています。 C4からF6までの音階と、そのあとの長いG6を聴いてみてください。
そして、次のように頼みます。
「インストゥルメント『Flute』を点検してください。音程のずれたノート、大きすぎたり小さすぎたりするノート、音の出ないキー、よくないループはありますか?」
アシスタントはインストゥルメントを分析し(1つの機能で、各ディビジョンのラウドネス、ピッチ、音色、ループを測定します)、続いて疑わしいサンプルを詳しく調べます。 その回答には、次の問題が挙げられます。
- キーE4が何も鳴らさない。「Flute 63」のディビジョンがD♯4で終わり、次のディビジョンがF4から始まっている
- 「Flute 69」が半音高く鳴る。A4(440 Hz)の音なのに、ルートキーがG♯4になっている
- 「Flute 78」が30セント高い。録音自体は音程が合っているのに、補正が+30セントになっている
- 「Flute 84」のディビジョンがほかより6 dB大きい(キーB5~C♯6)
- 「Flute 90」のループでクリックノイズが出る。ループポイントで波形が一致しておらず、ループの長さが周期の整数倍になっていない
続けて 「これらの問題を修正してください。」 と頼みます。
アシスタントは、「Flute 63」のキー範囲をE4まで広げ、「Flute 69」のルートキーをA4に、「Flute 78」の補正を0にし、「Flute 84」のディビジョンに6 dBのアッテネーションを設定し(サンプル自体は変更しません)、「Flute 90」にツール自動ループを使います。 もう一度分析すると、結果が確認できます。音の出ないキーも音程のずれたノートもなくなり、音量はどこも同じで、ループポイントの波形も一致するようになりました。 修正後の同じ音階です。
アシスタントは自分のしていることを説明しますが、選択を迫られることもよくあります。ここでは、サンプルのオーディオデータを変更する代わりに、ディビジョンを減衰させました。 別の方法がよければ、そう伝えるだけです。それぞれの変更はエディターで確認することも、元に戻すこともできます。
例:インストゥルメントを一から作る
Claude Codeのようなアシスタントは、コンピューター上でプログラムを実行することもでき、たとえばサンプルを計算できます。 これをPolyphoneの機能と組み合わせれば、説明からインストゥルメント全体を作ることができます。 前の例のフルートは、次の2つの依頼から、このようにして作られました。
「キー60のフルートの音を作ってもらえますか?」
「では、複数の強さのレベルを持つ完全なフルートを、新しいSoundFontに作ってください。」
アシスタントが行ったことを、順に見ていきましょう。
- General MIDIのSoundFontに入っている録音されたフルートを測定し、各音域での楽器の音色(倍音、息のノイズ、アタック、ビブラート)を調べました。
- 39個のサンプルを合成するプログラムを書きました。C4からC7まで3キーおきの13音を、それぞれ3つの強弱で作ります。p は暗めで息の音が多く、アタックが柔らかい音、f は倍音が豊かで、アタックがはっきりした音です。
- サンプルを新しいSoundFontにインポートし、ルートキーとループを設定して、強弱ごとにリリース0.4秒のインストゥルメントを1つずつ作りました。
- 3つのインストゥルメントを1つのプリセット(バンク0、プリセット73、General MIDI規格のフルート)に重ね、ベロシティ範囲を0-49、50-89、90-127にしました。方法はチュートリアル「複数のベロシティレイヤーでリアルなインストゥルメントを作る」で説明しているとおりです。
- ベロシティの各境界の両側でノートをレンダリングしました。音量の変化は0.1~0.4 dBだけなので、レイヤーが切り替わっても変わるのは音色だけです。
最後の手順で弱点が見つかりました。いちばん高いオクターブでは、3つのレイヤーの音色がほとんど同じだったのです。 アシスタントはプログラムを修正して、高音域でも強いノートが明るくなるようにし、サンプルを生成し直してインストゥルメントを作り直しました。
キーC4をベロシティ35、70、110で弾いたものを聴いてみてください。レイヤーごとに1音ずつです。
そして、だんだん強くなるフレーズです。音色が強弱についてきます。
合成したフルートが良い録音に並ぶことはありません。この例が示しているのは、音そのものよりも方法です。 自分の録音でも、同じような依頼ができます。「このフォルダーのwavファイルをインポートして、ルートキーを見つけ、ループを作り、強弱ごとに1つのレイヤーを持つインストゥルメントを作ってください。」
ほかのアイデア
ほかにも、次のような依頼がうまくいきます。
- 「すべてのインストゥルメントに、低音ほど長くなる自然なリリースを設定してください。」
- 「このインストゥルメントの高音が明るすぎます。C6から徐々に柔らかくしてください。」
- 「このオルガンのインストゥルメントから、C4で毎秒3回うなるセレステのストップを作ってください。」
- 「ステレオのサンプルをすべてモノラルに変換して、インストゥルメントを更新してください。」
- 「この2つのサンプルを比べてください。2つめのほうがこもって聞こえるのはなぜですか?」
- 「このプリセットのモジュレーターを、わかりやすく説明してください。」
- 「使われていないサンプルと重複したサンプルを削除してから、SoundFontをsf3形式で保存してください。」
ヒント
- 範囲をはっきり伝える:「インストゥルメント『Piano』だけ」「サンプルは変えずに、インストゥルメントだけ」など。
- 測定を頼む:「結果を確認して」「前後を比べて」と頼むと、アシスタントは分析機能を使って自分の作業を検証します。
- 大きな変更は一歩ずつ進め、手順の合間に耳で確かめましょう。
- コピーを残しておく:SoundFontのコピーを取っておき、満足してから保存しましょう。アシスタントに保存を頼むか、Ctrl+S を使います。
- 大きなSoundFont は分析に時間がかかります。SoundFont全体ではなく、インストゥルメントやプリセットに絞りましょう。
- プライバシー:アシスタントが受け取るのは、名前、パラメーター、測定値、波形の画像で、オーディオそのものは受け取りません。ただし、これらのデータは会話のほかの部分と同じく、アシスタントのサービスに送信されます。
Polyphoneは無料ですが、ウェブサイトと開発には費用がかかります。少額の寄付でも大きな助けになります。
寄付する戻る