ai-avatar-video
Create AI avatar and talking head videos via inference.sh CLI. Recommended: P-Video-Avatar (fastest, cheapest, built-in TTS). Also: OmniHuman, Fabric, PixVerse. Audio: Inworld TTS-2 (100+ languages, emotion steering for characters), ElevenLabs, Kokoro. Capabilities: audio-driven avatars, text-to-avatar, lipsync videos, talking head generation, virtual presenters, UGC content. Use for: AI presenters, explainer videos, virtual influencers, dubbing, marketing videos, UGC ads, gaming avatars, NPC dialogue. Triggers: ai avatar, talking head, lipsync, avatar video, virtual presenter, ai spokesperson, audio driven video, heygen alternative, synthesia alternative, talking avatar, lip sync, video avatar, ai presenter, digital human, ugc, ugc video, ugc ad, avatar ugc
1实现原理 · 为什么它能做到
与同仓工具 skill 同构:belt CLI 白名单 + 目录表;但本 skill 额外内嵌『强推荐决策』——把 pruna/p-video-avatar 标为首选并给出速度/成本对比表(~1.83s/s、$0.025/秒 vs OmniHuman ~28s/s/$0.16),引导 agent 默认走最便宜路径。
| **P-Video-Avatar** | `pruna/p-video-avatar` | **Best overall: speed, cost, quality, control** | **Yes (30 voices, 10 languages)** |
两条技术路径取决于模型是否内置 TTS:内置模型(p-video-avatar/fabric)直接给 image+voice_script;无 TTS 模型(OmniHuman/PixVerse)先跑 inworld/text-to-speech-2 拿 audio_url 再拼 image_url+audio_url——skill 用『Full Workflow』把链路串成可复制命令。
belt app run inworld/text-to-speech-2 --input '{
配音/多语言流水线是四段式:fast-whisper-large-v3 转写 → LLM/人工翻译 → kokoro-tts 生成新语言语音 → latentsync-1-6 做唇形同步,全部是 infsh/* app 的 belt 调用。
belt app run infsh/fast-whisper-large-v3 --input '{"audio_url": "https://video.mp4"}' > transcript.json
UGC 批产被显式示范:用 shell for 循环对同一肖像批量跑 3 个不同 voice 的 p-video-avatar,说明本 skill 定位含『规模化生产』(也因此直接关联费用与肖像使用边界)。
for voice in "Zephyr (Female)" "Puck (Male)" "Aoede (Female)"; do
输入素材链与图像 skill 拼接:用 pruna/p-image 先出 9:16 肖像再生成头像(Generate Portrait + Avatar 工作流),竖版比例贯穿(Tips: output aspect ratio matches the input image)。
"prompt": "professional headshot portrait of a young woman, neutral background, looking at camera, studio lighting, photorealistic",
2核心能力
3外部依赖
| Kind | Dependency / Endpoint |
|---|---|
| cli | belt(inference.sh CLI) |
| package | belt-sh/cli(npx skills add 安装) |
| api | 平台头像/TTS/音频 app:pruna/p-video-avatar、pruna/p-image、bytedance/omnihuman-1-5、falai/fabric-1-0、falai/pixverse-lipsync、inworld/text-to-speech-2、infsh/kokoro-tts、infsh/fast-whisper-large-v3、infsh/latentsync-1-6 |
| network | 平台文档 |
| network | 安装说明托管 |
4管控建议与判定依据
- 网络端点: 声明外部网络访问: platform belt CLI → inference.sh 平台(头像生成/TTS/STT/唇形同步 app) ['inference.sh',
- 本地工作目录: 文件读写与工件输出: 示例的多步工作流用 shell 重定向落盘中间产物:`> speech.json`(TTS 输出)、`> transcript.json`(转写)、`
- SKILL.md: 声明调用宿主 CLI 解释器或外部运行环境
5第二遍独立确认
- [discrepancy] description 声称 Inworld TTS-2 支持 100+ languages、emotion steering — 正文有 inworld/text-to-speech-2 调用示例且含 [friendly]/[excited] 情绪标记(emotion steering 有据);但 '100+ languages' 这一具体数字在 SKILL.md 内无出处——数值来自平台宣称,本源码无法定位。
- [ok] 成本对比表自洽性 — 表内 ~28s/s ≈ 1.83s/s×15('15x slower' 一致)、$0.16≈$0.025×6.4('6.4x more' 一致);数字为平台方宣称,作为选型参考存在。
- [ok] P-Video-Avatar 30 voices/10 languages 声明 — 表内 Built-in TTS 列与正文 UGC 章节('30 voices, 10 languages — match your target audience')两处一致。
- [ok] 四条工作流(TTS+Avatar / 配音流水线 / 画像→头像 / UGC 批产)可执行性 — 每条均含完整 belt 命令与重定向;调用的 app-id(inworld/text-to-speech-2、infsh/fast-whisper-large-v3、infsh/kokoro-tts、infsh/latentsync-1-6、pruna/p-image)均在示例内成对出现。
- [ok] 无脚本文件/无凭证/无直连网络 — 目录仅 SKILL.md;执行面为 allowed-tools 白名单 belt;多行 shell 仅以示例文本存在,由宿主执行。
- [ok] 本地文件写入面 — 仅示例重定向 > speech.json / > transcript.json / > new_speech.json,属执行示例时的落盘行为。
- [ok] 肖像/音频为远程 URL 输入 — 全部示例输入 image/audio/image_url/audio_url 值为 https://…,无本地路径。
- [unlocatable] installs 安装量 — 无公开安装量数据源,置 null。
6结论
28ad95bf92e9736e…