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

详细介绍

音频短曲技能

包含三个子模式。当前项目的 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,而不是 --voice 中的文字描述
  • 专有名词 / 首字母缩写的发音提示

音效

  • 质感(撞击 / 呼啸 / 环境音 / 拟音)
  • 时长 + 音量包络(急促起音还是缓慢渐强)
  • 分层说明(单次音效还是多层叠加)

发送前用 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:{"file": {"name": "...", ...}}。
文件字节会写入项目;FileViewer 会自动渲染音频播放控件。

步骤 4 — 交付

回复内容包括:计划摘要、派发器返回的文件名,以及一句建议用户如何尝试不同版本的话(例如“将节奏从 92 BPM 调整到 108 BPM”,而不是“做得不一样”)。

硬性规则

  • TTS 会逐字朗读你的脚本。派发前务必校对——哪怕多一个逗号都会改变语气节奏。
  • MiniMax TTS 不接受 --voice 中的自由文本声音描述。请使用实际的 MiniMax voice_id(例如 male-qn-qingse),或省略该标志并使用守护进程的默认声音。
  • 音乐:30 秒以内 = 单一段落;30–90 秒 = 前奏 + 主体;90 秒以上 = 完整曲线。不要试图在 15 秒内塞进一首三幕式歌曲。
  • 音效:优先使用一层描述明确的音效,而不是一段“弄得酷一点”之类的话——生成器更容易响应具体的质感词。
  • 每轮都要保存文件。音频文件一写入,查看器就会显示播放控件。

评论

支持 Markdown