用途:为广告和短视频生成原创背景音乐,基于 ElevenLabs Music API,提供三种模式。快速提示词为一次性文本生音乐;先计划后作曲先生成结构化作曲计划(段落、风格、歌词)再编辑并作曲,适合需要控制编排、器乐与人声段落或特定歌词的场景;视频配乐可上传视频片段,生成与剪辑匹配的乐谱。与 create-programmatic-music-bed 配合处理人声感知混音与闪避,与 create-voiceover-elevenlabs 配合完成整段广告音频。
主要能力与用法:输入为音乐描述、目标时长(3000–600000 毫秒,提示词模式必填)、可选 composition_plan.json、可选源视频(≤10 个、合计 ≤200MB、≤600 秒)及输出目录,环境变量需 ELEVENLABS_API_KEY,或 Fal 托管回退的 FAL_API_KEY。模式对应脚本:快速背景音乐用 scripts/compose.sh;精细控制用 scripts/plan.sh 后接 scripts/compose_from_plan.sh;时间戳字幕同步用 scripts/compose_detailed.sh --with-timestamps;视频配乐用 scripts/video_to_music.sh;渐进播放用 scripts/stream.sh。作曲计划端点免费,迭代结构时优先先计划后作曲。
关键参数:prompt 与 composition_plan 互斥;music_length_ms 范围 3000–600000,分段为 3000–120000;model_id 默认 music_v1;force_instrumental 默认 false,旁白广告应设 true;respect_sections_durations 默认 true;seed 尽力复现;output_format 默认 mp3_44100_128,更高码率需 Creator+ 套餐;with_timestamps 仅详细模式返回词级时间;sign_with_c2pa 可对 MP3 签名。输出含 music.mp3、composition_plan.json、music_metadata.json、manifest.json 与 verification.md。
限制与失败模式:缺少 ELEVENLABS_API_KEY 时可回退 Fal 端点(fal-ai/elevenlabs/music,约 $0.40/28 秒,简单调用仅支持 prompt 与 music_length_ms,结构化需分段生成后用 FFmpeg 拼接)。422 常见于 prompt 与 composition_plan 同时设置或时长越界;403 为码率或 store_for_inpainting 超出当前套餐;视频超限同上。单条提示词难以产生真正的结构突变,需两段分别生成再拼接。Fal 的音效端点存在上游问题,音效可使用 synthesize-sfx-ffmpeg。商用条款需按自身套餐核实。创作完成后用 ffprobe 校验时长,并写 manifest.json 与 verification.md。