mcpField
A
audio-jingle

audio-jingle

github.com/mphinanceクリエイティブ・メディア3283 回インストール3 日前に更新
リポジトリ

audio-jingle について

audio-jingleは、プロジェクト向けに音楽、音声、効果音を制作するスキルです。プロジェクトのメタデータに基づいて内容を計画し、統一ディスパッチャーから生成を実行します。

主な機能

  1. 01音楽・音声・効果音を切り替え
  2. 02プロジェクトのメタデータから計画
  3. 03モデルに合わせたプロンプト作成
  4. 04統一ディスパッチャーでファイル生成
  5. 05納品とバリエーションの提案

活用シーン

  1. 01プロジェクト用の短い音楽やスコアの制作
  2. 02確定した原稿の音声化
  3. 03質感と長さを指定した効果音の生成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mphinance/alpha-skills --skill audio-jingle

インストール後、Claude Code で/audio-jingleを入力して読み込まれたか確認します。

同梱ファイルexample.htmlREADME.md

詳細

Audio Jingle スキル

3 つのサブモードがあります。アクティブなプロジェクトの audioKind が、どれを実行するかを決定します。

audioKindルーティング先のモデルプランの焦点
musicSuno V5(デフォルト)、Udio、Lyria 2ジャンル + テンポ + インストルメンテーション
speechMiniMax TTS(デフォルト)、Fish、ElevenLabs V3スクリプト + ボイス + ペーシング
sfxElevenLabs SFX(デフォルト)、AudioCraftテクスチャ + インパクト + 長さ

リソースマップ

audio-jingle/
├── SKILL.md
└── example.html

ワークフロー

ステップ 0 — プロジェクトのメタデータを読み取る

audioKind、audioModel、audioDuration(秒)、および(speech の場合は)voice。audioKind で分岐し、値をそのまま使用してください。何かが (unknown — ask) とマークされていない限り、確認フォームは使いません。

重要: voice はプロバイダー固有です。minimax-tts の場合、--voice には有効な MiniMax の voice_id(たとえば male-qn-qingse)を指定する必要があり、自然言語の説明ではありません。散文によるボイスの指示(「温かみのある女性ナレーター」、「ニュートラルな標準語」)しかない場合は、それをプランに残しつつ --voice を省略してデーモンのデフォルトの voice id を適用するか、ユーザーに特定の id を選んでもらってください。

ステップ 1 — プラン

Music

  • ジャンル + 参考アーティスト(1〜2 組)
  • テンポ(BPM)+ キー
  • インストルメンテーション(最大 3〜5 楽器)
  • ボーカル: あり / なし / ハミング / 合唱
  • ムードの展開(イントロ → サビ → アウトロ)

Speech

  • スクリプト(最終版であり下書きではない — TTS はそのまま読み上げます)
  • ボイスのターゲット + ペーシング MiniMax の場合、これは --voice に散文を書くのではなく、実際の voice_id を意味します
  • 固有名詞 / 頭字語の発音ヒント

SFX

  • テクスチャ(インパクト / ウーッシュ / アンビエンス / フォーリー)
  • 長さ + エンベロープ(鋭いアタックか、穏やかな盛り上がりか)
  • レイヤリングのメモ(単発のヒットか、重ねるか)

ディスパッチの前に、プランを 2〜3 文で述べてください。

ステップ 2 — プロンプトを組み立てる

上流モデルが好む形式を使用してください。audioDuration は API パラメーターに直接バインドし、「30 秒にしてください」といった文言を散文に決して入れないでください。

ステップ 3 — メディアコントラクト経由でディスパッチする

統一ディスパッチャーを使用してください — プロバイダー API を手動で呼び出さないでください:

node "$OD_BIN" media generate \
  --project "$OD_PROJECT_ID" \
  --surface audio \
  --audio-kind "<music|speech|sfx>" \
  --model "<audioModel from metadata>" \
  --duration <audioDuration seconds> \
  [--voice "<provider voice id (speech only)>"] \
  --output "<short-slug>-<duration>s.mp3" \
  --prompt "<assembled prompt from Step 2 — for speech, the literal script>"

このコマンドは 1 行の JSON を出力します: {"file": {"name": "...", ...}}。バイト列はプロジェクトに保存され、FileViewer がオーディオのトランスポートコントロールを自動的にレンダリングします。

ステップ 4 — 引き渡す

返信には、プランの要約、ディスパッチャーが返したファイル名、そしてユーザーがバリエーションを希望する場合に試すべきことを 1 文(「雰囲気を変えて」ではなく「テンポを 92 から 108 BPM に変える」など)を含めてください。

厳守事項

  • TTS はあなたのスクリプトを文字通り読み上げます。ディスパッチの前に校正してください — コンマが 1 つあるだけでもリズムが変わります。
  • MiniMax TTS は --voice 内の自由形式のボイス散文を拒否します。実際の MiniMax の voice_id(たとえば male-qn-qingse)を使用するか、フラグを省略してデーモンのデフォルトボイスを適用させてください。
  • Music: 30 秒未満 = 単一セクション、30〜90 秒 = イントロ + 本文、90 秒以上 = 完全な展開。3 幕構成の曲を 15 秒に収めようとしないでください。
  • SFX: 「かっこよくして」という段落よりも、よく記述された 1 つのレイヤーを優先してください — ジェネレーターは具体的なテクスチャの言葉に報いてくれます。
  • 毎ターンファイルを保存してください。オーディオビューアーはファイルが保存された瞬間にトランスポートコントロールを表示します。

コメント