用途
elevenlabs-remotion 用于为 Remotion 视频生成专业 AI 配音,基于 ElevenLabs API 实现文本转语音。适合需要为视频、音频旁白或文本转语音内容制作配音的场景。
主要能力
- 文本转语音:通过命令行传入文本生成配音音频。
- 角色预设:提供 literal、narrator、salesperson、expert、conversational、dramatic、calm 七种预设,用于生成更自然的配音而非逐字朗读屏幕文字。
- 场景化生成与请求拼接:通过 scenes.json 定义多个场景,使用 ElevenLabs 请求拼接保持各场景韵律一致,输出单个场景音频、合并音频及元数据文件。
- 单场景重新生成:可针对某个场景重新生成,支持更换文本或角色。
- 缩略图嵌入:将缩略图嵌入 MP4 视频,使平台显示自定义缩略图而非首帧。
- 时序校验:生成后自动使用 ffprobe 校验时长偏差、前后静音和语速,并更新 info.json 中的实际测量值。
使用方式
前置条件:在 .env.local 中配置 ELEVENLABS_API_KEY。
快速开始示例:
# 从文本生成配音
node .claude/skills/elevenlabs-remotion-skill/generate.js --text "Your text here" --output public/audio/voiceover.mp3
# 使用旁白风格生成
node .claude/skills/elevenlabs-remotion-skill/generate.js --text "Your text" --character narrator --output voiceover.mp3
# 使用请求拼接生成多场景
node .claude/skills/elevenlabs-remotion-skill/generate.js --scenes remotion/scenes.json --output-dir public/audio/project/
重新生成单个场景:
node .claude/skills/elevenlabs-remotion-skill/generate.js --scenes scenes.json --scene scene2 --new-text "Updated text"
列出可用语音和角色预设:
node .claude/skills/elevenlabs-remotion-skill/generate.js --list-voices
node .claude/skills/elevenlabs-remotion-skill/generate.js --list-characters
嵌入缩略图:
node .claude/skills/elevenlabs-remotion-skill/generate.js \
--embed-thumbnail public/videos/my-video.mp4 \
--thumbnail public/videos/my-thumbnail.png \
--output public/videos/my-video-with-thumb.mp4
校验已有音频:
node .claude/skills/elevenlabs-remotion-skill/generate.js --validate public/audio/product-demo/
适用场景
- 为 Remotion 视频制作配音,并按场景精确同步。
- 制作解说、纪录片、营销广告、教程、社交媒体等不同风格的旁白。
- 需要多场景语音韵律一致的项目。
- 需要为视频嵌入自定义缩略图的发布流程。
限制
- 需要 ElevenLabs API 密钥。
- 缩略图嵌入支持视频格式 MP4(H.264/H.265),缩略图格式 PNG、JPG、JPEG。
- 时序校验依赖 ffprobe。
- 具体收费、价格、平台支持范围等资料暂未提供。