SuperAPI AI 工具集

elevenlabs

设计与创作

查看项目

更新于 10-14 07:59

技能介绍

ElevenLabs 音频生成技能用于通过 ElevenLabs API 生成 AI 配音、音效与音乐,面向需要为视频、播客或游戏制作音频内容的场景。技能以 OpenMontage 的提供方路由为入口:选择认证路径前应先检查 OpenMontage 注册表。当 fal_elevenlabs_tts 可用时优先使用它,它通过集中管理的 fal.ai 连接提供 Eleven v3、Multilingual v2 和 Turbo v2.5,无需单独的 ElevenLabs 凭据;仅当注册表报告直接提供方可用时才使用 elevenlabs_tts。在共享安装中,不要告知用户创建 .env、导出密钥或粘贴凭据,直连提供方访问缺失应作为管理员设置请求上报。文中给出的直接 API 示例需要集中配置的 ELEVENLABS_API_KEY,当 fal.ai 提供方可用时它们不是默认路径。

主要能力与使用方式:文本转语音方面,示例通过 client.text_to_speech.convert 传入 text、voice_id、model_id 与 VoiceSettings(stability、similarity_boost、style、speed),并用 save 保存为 voiceover.mp3。模型选择上,eleven_multilingual_v2 一致性最高、生产可用、支持 29 种语言、不支持 SSML;eleven_flash_v2_5 与 eleven_turbo_v2_5 质量良好、支持 <break> 和 <phoneme> 标签,后者延迟最低;eleven_v3 表现力最强但处于 Alpha 阶段、不稳定,需要提示工程。风格参数方面,自然/专业、对话式、活力/YouTuber 三类各自给出 stability、similarity、style、speed 的取值区间。

停顿与发音:使用 flash/turbo 模型时可内联 SSML break 标签,单次最长 3 秒,过多停顿会导致速度失真;multilingual_v2 与 v3 不支持 SSML,可用段落分隔(空行,约 0.3-0.5 秒自然停顿)或后期用 ffmpeg 切分插入静音。文档特别警告省略号不是可靠的停顿手段,可能被读成词或声音。发音控制可用语音拼写(任何模型)或 SSML phoneme 标签(仅 flash/turbo)。迭代工作流为生成、试听、定位发音与节奏问题、调整拼写/停顿标签/语音设置、重新生成;若停顿不够精确,建议在后期用 ffmpeg 添加静音而非与 TTS 引擎较劲。

语音克隆:即时克隆使用 client.voices.ivc.create()(而非 client.voices.clone()),以二进制 "rb" 模式传入文件句柄而非路径,m4a 需先用 ffmpeg 转为 mp3,2-3 个样本可提升准确度,保存 voice_id 以便复用。专业语音克隆需要 Creator 计划及以上、30 分钟以上音频。

音效与音乐:音效单次生成最长 22 秒,通过 client.text_to_sound_effects.convert 传入描述、时长与 prompt_influence,提示应具体。音乐生成时长为 10 秒到 5 分钟,使用 client.music.compose()(不是 .generate()),提示结构包含流派、情绪、乐器、节奏与用途,可用 force_instrumental=True 或注明“无人声”生成背景音乐。

Remotion 集成:完整流程为 VOICEOVER-SCRIPT.md → voiceover.py → public/audio/ → Remotion composition。可用工具 commands/voiceover.py --scene-dir public/audio/scenes --json 为每个场景生成音频并输出 manifest.json(含每个文件的时长与 totalDuration);在 Composition 中用 Series 按帧时长排列场景,并用 Audio 组件播放持续音轨与低音量背景音乐;也可在每个场景组件内单独添加 Audio。同步原则是按音频时长计算场景帧数(而非相反),示例展示 30fps 下将秒数转换为帧。词级时间戳方面,当字幕、词同步标题或动画提示需要跟随真实语音时,可直接对 elevenlabs_tts 传入 with_timestamps: True,而不是事后转写;结果包含 word_timestamps(词及起止秒数)与 alignment_path(原始字符对齐 JSON),时间以该音频文件起点计,多段拼接到同一时间线时需加上各段偏移;词以空白分隔并保留标点,与服务端规范化文本后 alignment_matches_text 可能为 false。逐段合成可获得精确的段落边界用于场景切换。此外还提供音频淡入、延迟播放(Sequence from)、配音与演示视频同步(按播放速率匹配)以及使用 delayRender/continueRender 的音频加载错误处理模式。命令 /generate-voiceover 负责完整工作流:读取 VOICEOVER-SCRIPT.md、提取各场景旁白、经 ElevenLabs API 生成音频、保存到 public/audio/scenes/、创建带时长的 manifest.json 并更新 project.json 的时序信息。常用语音包括 George (JBFqnCBsd6RMkjVDRZzb)、Rachel (21m00Tcm4TlvDq8ikWAM)、Adam (pNInz6obpgDQGcFmaJgB),可用 client.voices.get_all() 列出全部。

适用场景与限制:适用于视频配音、播客与游戏音频制作,以及需要字幕/动画与语音精确对齐的 Remotion 项目。限制与前提包括:部分能力依赖 fal.ai 或直连 ElevenLabs 的可用性与凭据,专业语音克隆需要 Creator 计划及以上和 30 分钟以上音频,音效单次最长 22 秒,音乐最长 5 分钟,SSML 仅 flash/turbo 模型支持,eleven_v3 为 Alpha 且不稳定,省略号不能作为停顿手段。文档未提供具体价格与更多平台支持信息。