mcpField
M
music-generation

music-generation

github.com/bytedanceクリエイティブ・メディア84.6k297 回インストール今日更新
リポジトリ

music-generation について

MiniMax music generation APIを使い、JSON仕様から歌入りまたはインストゥルメンタルの楽曲を作るスキルです。スタイル、ムード、シーンを指定し、歌詞の入力または自動生成を選べます。

主な機能

  1. 01JSON仕様から楽曲を生成
  2. 02スタイル、ムード、シーンを指定
  3. 03歌詞の入力または自動生成
  4. 04インストゥルメンタル曲を作成
  5. 05MP3音声を出力

活用シーン

  1. 01シーンのプロンプトから楽曲を作成
  2. 02入力した歌詞から歌唱曲を生成
  3. 03インストゥルメンタル音楽を制作

インストール

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

$npx skills add https://github.com/bytedance/deer-flow --skill music-generation

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

同梱ファイルscripts/generate.py

詳細

音楽生成スキル

概要

このスキルでは、構造化された JSON 仕様を使用して、MiniMax 音楽生成 API(/v1/music_generation)から歌(ボーカルあり、またはインストゥルメンタル)を生成します。prompt にスタイル、ムード、情景を記述し、必要に応じて lyrics を指定すると、スクリプトが MP3 を返します。

ワークフロー

Step 1: 要件を把握する

希望するスタイル、ムード、情景、言語、ボーカルありの曲とインストゥルメンタル曲のどちらを希望するかを確認します。歌詞を指定するか、モデルに作成させるかも決めます。

Step 2: 仕様 JSON を作成する

/mnt/user-data/workspace/ に {descriptive-name}.json という名前の JSON ファイルを作成します。

{
  "title": "Rainy Night Cafe",
  "prompt": "indie folk, melancholic, introspective, walking alone, cafe",
  "lyrics": "[verse]\nStreetlights glow the night wind sighs\n[chorus]\nPush the wooden door warm air inside"
}

フィールド:

  • title(省略可):人が読んでわかる名前です。
  • prompt(必須):スタイル、ムード、情景を指定します。曲の音楽的な特徴を決定します。
  • lyrics(省略可):歌詞です。行の間には \n を使用し、[Intro]、[Verse]、[Pre Chorus]、[Chorus]、[Bridge]、[Outro] などの構成タグを付けます。
  • is_instrumental(省略可、bool):歌詞のないインストゥルメンタル曲にする場合は true を設定します。

動作:

  • lyrics が指定されている場合 → 指定した歌詞が歌われます。
  • is_instrumental: true の場合 → ボーカルなしのインストゥルメンタル曲になります。
  • どちらも指定されていない場合 → モデルが prompt に基づいて歌詞を自動作成します(lyrics_optimizer)。
Step 3: 生成を実行する
python /mnt/skills/public/music-generation/scripts/generate.py \
  --prompt-file /mnt/user-data/workspace/rainy-night-cafe.json \
  --output-file /mnt/user-data/outputs/rainy-night-cafe.mp3

パラメーター:

  • --prompt-file:仕様 JSON の絶対パス(必須)。
  • --output-file:出力 MP3 の絶対パス(必須)。

[!NOTE] Python ファイルは読み込まず、パラメーターを指定して実行してください。

環境

  • MINIMAX_API_KEY(必須):MiniMax のインターフェースキーです。
  • MINIMAX_API_HOST(省略可):デフォルトは https://api.minimaxi.com です。
  • MINIMAX_MUSIC_MODEL(省略可):デフォルトは music-2.6-free(すべての API キーユーザーが利用できます)です。上限を引き上げるには、有料ユーザーまたは Token-Plan ユーザーは music-2.6 を設定できます。

出力の取り扱い

  • 音楽は MP3 として保存されます(通常は /mnt/user-data/outputs/ 内)。
  • 返された音声は、空でないバイト列にデコードでき、ID3 タグヘッダーまたは MPEG フレームシグネチャを含んでいる必要があります。これはヘッダーの妥当性確認であり、音声全体のデコードではありません。
  • 不正な形式、空、または認識できない音声は、出力ディレクトリの作成や出力ファイルを開く前に拒否されます。既存の出力は保持されます。
  • 音声がない場合は「MiniMax returned no audio data」と報告されます。空白のみの 16 進文字列の場合は「MiniMax audio decoded to empty bytes」と報告されます。
  • present_files ツールを使用して、生成したファイルをユーザーと共有します。
  • 調整が必要な場合は、スタイルや歌詞の変更を提案します。

注意事項

  • prompt はスタイル、ムード、情景に絞り、実際に歌う言葉は lyrics に記述してください。
  • 英語以外の曲の場合は、対象言語で lyrics を記述してください。

コメント