mcpField
A
audio-jingle

audio-jingle

github.com/nexu-ioクリエイティブ・メディア104.6k208 回インストール今日更新
リポジトリ

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/nexu-io/open-design --skill audio-jingle

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

同梱ファイルexample.html

詳細

オーディオジングルスキル

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 を確認します。既知の値に応じて分岐し、その値をそのまま使用してください。メタデータがないからといって、質問する必要はありません。可能であれば安全なデフォルトを推測し、不足している情報によって依頼された出力が大きく変わる場合や、生成できない場合に限り、確認フォームを提示してください。

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

ステップ 1 — プランを立てる

音楽

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

音声

  • 台本(下書きではなく最終版 — TTS は台本をそのまま読み上げます)
  • 音声の方向性+話すペース MiniMax の場合、これは文章での指定ではなく、実在する voice_id を意味します
  • 固有名詞/頭字語の発音に関するヒント

効果音

  • 音の質感(インパクト/シュッという音/環境音/フォーリー)
  • 長さ+エンベロープ(鋭いアタックか、穏やかな盛り上がりか)
  • レイヤーに関するメモ(単発か、重ねるか)

実行前に、プランを 2〜3 文で提示してください。

ステップ 2 — プロンプトを作成する

上流モデルが推奨する形式を使用してください。audioDuration は API パラメーターに直接割り当ててください。「30 秒にしてください」のような文をプロンプトに入れてはいけません。

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

統合ディスパッチャーを使用してください。プロバイダーの API を直接呼び出してはいけません。

"$OD_NODE_BIN" "$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>"

コマンドは JSON を 1 行出力します:{"file": {"name": "...", ...}}。 ファイルのデータはプロジェクトに保存され、FileViewer がオーディオの再生コントロールを自動的に表示します。

ステップ 4 — 引き渡す

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

厳守事項

  • TTS は台本を文字どおり読み上げます。実行前に校正してください。読点が 1 つ余計にあるだけでも、話すリズムが変わります。
  • MiniMax TTS は --voice に自由形式の文章を指定すると拒否します。実在する MiniMax の voice_id(例:male-qn-qingse)を使うか、フラグを省略してデーモンのデフォルト音声を適用してください。
  • 音楽:30 秒未満は 1 セクション、30〜90 秒はイントロ+本編、90 秒以上は全体的な展開にします。15 秒に 3 幕構成の曲を詰め込もうとしないでください。
  • 効果音:「かっこよくして」のような段落を書くより、よく説明されたレイヤーを 1 つ使ってください。生成モデルは具体的な音の質感を表す言葉に反応します。
  • 毎回、ファイルを保存してください。ファイルが配置されるとすぐに、オーディオビューアに再生コントロールが表示されます。

コメント