图像与设计
用 MiniMax Music API…
当用户想创作音乐(人声歌曲、纯音乐或翻唱)时,通过 mmx CLI 调用 MiniMax Music API 完成生成、播放与迭代。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
用 MiniMax Music API 特定
解决思路
- 先检查 mmx CLI 是否安装:`command -v mmx && mmx --version || echo "mmx not found"`;未安装则用 `npm install -g mmx-cli` 安装(需 Node.js)。
- 首次使用需认证:`mmx auth login --api-key <your-minimax-api-key>`,API key 从 MiniMax Platform 获取,凭证保存到 `~/.mmx/credentials.json`;用 `mmx quota show` 验证。
- 推荐安装音频播放器 mpv、ffplay 或 macOS 自带的 afplay,优先用 mpv(支持交互控制)。
- 从用户首条消息检测语言,整个会话用该语言回复;所有面向用户的文字(预览标签、字段名、确认、状态、播放信息、反馈提示、提示词预览)都要翻译成用户语言。
- 发送给 API 的 prompt 始终用英文以获最佳生成质量,但预览给用户时展示本地化描述,不暴露原始英文 prompt。
- 歌词语言默认等于用户语言;仅当用户明确要求时才换语言,且通过人声描述或曲风(如 K-pop、J-rock、Mandopop、Latin pop)自然表达,而非追加语言指令。
- Step 0 检测意图:判断歌曲类别(人声/纯音乐/翻唱)与创作模式(Basic 一句话/Advanced 精细控制);若模糊则用决策树询问,若用户给出明确一句话(如“做一首悲伤的钢琴曲”)则直接推断为纯音乐+Basic 模式。
- Basic 模式:把用户一句话扩展为丰富 prompt,格式为 `A [mood] [BPM optional] [genre] song, featuring [vocal description], about [narrative/theme], [atmosphere], [key instruments and production].`,参考 Prompt Writing Guide 附录。
- Basic 模式生成前向用户展示预览(类型、描述、歌词是否自动生成),并询问确认或修改。
- Advanced 模式歌词阶段:用户提供歌词则格式化展示并询问修改,最终通过 `--lyrics` 传入;只有主题无歌词则用 `--lyrics-optimizer` 自动生成;支持迭代编辑(如“改第二段副歌”只重写该段)。
- Advanced 模式 prompt 阶段:根据歌词情绪与内容生成推荐 prompt,以可增删改的标签形式呈现,参考 Prompt Writing Guide 附录。
- Advanced 模式可选规划(提供但不强制):歌曲结构(verse-chorus-verse-chorus-bridge-chorus 或自定义)、BPM 建议(编码为 tempo 描述)、参考风格映射为 prompt 标签、人声特征描述。
- Advanced 模式最终确认:展示完整参数摘要后再生成。
- 调用 mmx 生成:人声+自动歌词用 `mmx music generate --prompt "<prompt>" --lyrics-optimizer --genre ... --mood ... --vocals ... --instruments ... --bpm ... --out ~/Music/minimax-gen/<filename>.mp3 --quiet --non-interactive`。
- 人声+用户歌词用 `mmx music generate --prompt "<prompt>" --lyrics "<lyrics with section markers>" ...`。
- 纯音乐用 `mmx music generate --prompt "<prompt>" --instrumental ...`。
- 优先使用结构化参数(`--genre`、`--mood`、`--vocals`、`--instruments`、`--bpm`、`--key`、`--tempo`、`--structure`、`--references`、`--avoid`、`--use-case`)而非把所有内容塞进 `--prompt`。
- 生成时显示进度指示,典型耗时 30-120 秒。
- 生成后检测播放器:`command -v mpv || command -v ffplay || command -v afplay`;mpv 用 `mpv --no-video <file>`,ffplay 用 `ffplay -nodisp -autoexit <file>`,afplay 用 `afplay <file>`;无播放器则只显示文件路径。
- 播放后告知用户文件名与保存路径,但不要展示播放控制快捷键(后台运行无效)。
- 播放后询问反馈:1 满意保留 / 2 调整后重新生成 / 3 微调歌词或风格后重新生成 / 4 不要了重新开始。
- 根据反馈处理:满意则结束并再次提及路径;调整则询问改什么(prompt/歌词/风格)并重跑,旧文件加 `_v1` 后缀保留对比;微调则进入 Advanced 模式并预填当前参数;删除重来则删文件回到 Step 0。
- 翻唱模式:询问源音频(本地路径或 URL)与目标翻唱风格,可选自定义歌词或歌词文件;用 `mmx music cover --prompt "<style>" --audio-file <source.mp3>` 或 `--audio <url>`,自定义歌词用 `--lyrics` 或 `--lyrics-file`。
- 翻唱参考音频要求 mp3/wav/flac,时长 6 秒至 6 分钟,最大 50MB;未提供歌词时自动通过 ASR 提取原歌词。
- 翻唱可选参数:`--seed <number>`(0-1000000 可复现)、`--channel <n>`(1 单声道/2 立体声默认)、`--format <fmt>`(mp3 默认/wav/pcm)、`--sample-rate <hz>`(默认 44100)、`--bitrate <bps>`(默认 256000)。
- 错误处理:mmx 未找到则 `npm install -g mmx-cli`;认证错误(退出码 3)则 `mmx auth login`;配额超限(退出码 4)报告限额并建议等待或升级;API 超时(退出码 5)重试一次后报告失败;内容过滤(退出码 10)调整 prompt 规避;歌词格式无效则自动修复 section markers 并警告;无播放器则保存并告知路径、建议安装 mpv;网络错误则显示详情并建议检查连接。
- 绝不复制受版权保护的歌词;翻唱时始终基于原曲主题写原创歌词并向用户说明。
- 歌词中始终包含 section markers:`[verse]`、`[chorus]`、`[bridge]`、`[outro]`、`[intro]`。
- 文件管理:若 `~/Music/minimax-gen/` 超过 50 个文件,新会话开始时建议清理。
适用边界 · 注意事项
- 不用于播放已有音乐文件、音乐理论问答,或不涉及生成的音乐推荐。
- 需要先安装 mmx CLI 并拥有 MiniMax API key(付费/注册服务),无凭证时无法使用。