Vidu API comic strip short film generation capability, with built-in AI-generated videos, images, and TTS.
by @x-jihua
将用户创意或剧本转化为完整动漫成片,从剧本创作到自动拼接全流程使用 Vidu API 完成生图、生视频与 TTS,且禁止使用任何非 Vidu 模型。在用户需要制作动漫/动画短片、提供创意主题或详细剧本需求时使用;依赖 ffmpeg 与已配置的 Vidu API 凭证。
clawhub install vidu-anime-production📖 About This Skill
name: anime-production-update description: "将用户创意或剧本转化为完整动漫成片,从剧本创作到自动拼接全流程使用 Vidu API 完成生图、生视频与 TTS,且禁止使用任何非 Vidu 模型。在用户需要制作动漫/动画短片、提供创意主题或详细剧本需求时使用;依赖 ffmpeg 与已配置的 Vidu API 凭证。"
动漫成片制作 Skill
任务目标
前置准备
apt-get update && apt-get install -y ffmpeg
操作步骤
2. 风格确认 - 根据剧本内容和用户偏好,确定整体美术风格 - 提供风格的文本形式的选项:3d动漫风格、二次元动漫风格、中国古风、赛博朋克、写实风等 - ⚠️ 确认点:向用户展示整体风格设定,等待用户确认或调整,如果用户在前面的对话中已经交代了风格,不需要让用户再确认 - 记录确认后的风格配置,用于后续所有生成任务的首句提示词
3. 场景、大分镜设计
- 将剧本拆解为多个场景,每个场景设计大分镜
- ⚠️ 所有场景图只能使用Vidu API生成!
- 为每个场景生成完整的场景资产包:
- 基础场景图:使用 scripts/vidu_generate_image.py,基于确认的风格和剧本描述
- 人物站位图:使用 scripts/vidu_generate_image.py,基于场景图+当前场景的所有单个角色图,参考剧本内容,生成角色在场景中的位置关系
- 场景四宫格图:使用 scripts/vidu_generate_image.py,- 使用提示词:“基于场景图,生成该场景不同角度的四宫格图(正面、反打、左侧面、右侧面镜头)”
- 场景描述(大致剧情、出镜角色、相对位置)
- ⚠️ 确认点:向用户展示每个场景的三张图(场景图、站位图、四宫格图)和设计方案,等待用户确认或修改
- 智能体指导场景拆解,调用脚本生成场景资产包
- 记录确认后的场景资产(三张图URL),用于后续所有分镜生成
4. 角色资产确认(含三视图检测)
- 检查用户上传的角色图是否是三视图
- ⚠️ 如果不是三视图,只能使用Vidu API生成角色三视图!
- 使用 scripts/vidu_generate_image.py
- 使用提示词:"参考图角色,中心区域生成全身三视图以及一张面部特写(最左边占满三分之一的位置是超大的面部特写,右边三分之二放正视图、侧视图、后视图),角色比例适中,清晰可见。严格按照比例设定,包括身高对比和头身比,线条简洁明了,线条流畅自然,色彩搭配协调,保持整体风格统一和原图一致,背景与角色形成对比,视觉焦点集中在角色身上,确保角色比例准确,表情动作自然流畅,如果角色没有服装,服装设计需要符合角色背景,角色为自然站立状态,比例16:9"
- 参考文档详见 references/character-three-views.md
- ⚠️ 所有TTS只能使用Vidu API!
- 为每个角色匹配TTS音色(参考 references/voice-list.md)
- 为每个角色的音色生成试听音频(使用 scripts/vidu_generate_audio.py)
- ⚠️ 确认点:向用户展示每个角色的三视图、音色名称和试听音频,等待用户确认或调整
- 记录确认后的角色资产配置(角色三视图URL + 音色ID)
5. 资产整合 - 校验每个场景的资产完整性: - 角色图及对应音色(已确认,包含三视图) - 场景图(已确认,包含三张图) - 整体风格(已确认) - 输出镜头n的资产包(结构见 references/storyboard-format.md) - 智能体完成资产校验与整理 - ⚠️ 确认点:向用户展示完整的资产清单(角色、场景、风格),等待用户最终确认后进入生成阶段
6. 小分镜表生成 - 根据场景大分镜生成详细的小分镜表 - 每个分镜包含:输入图(使用已确认的角色图、场景图、人物站位图、场景四宫格图)、分镜提示词、说话人、情绪、台词、时长 - 在某场景下,每个分镜的输入图必须包含该场景人物站位图和该场景四宫格 - 分镜提示词必须遵循规范:风格/景别/机位/构图/运镜 + 画面描述 + 图片强调 - 特别注意: - 若使用 viduq3 模型:提示词中必须包含台词内容,例如 "他说:'xxxx'"。 - 图片强调必须参考人物站位图中的角色位置关系。 - 特别注意:对于双人对话镜头,必须参考 references/camera-shots.md 中的机位描述,选择合适的镜头类型(如内反拍、外反拍等)来丰富画面语言。 - 风格部分使用已确认的整体风格词 - 参考 references/storyboard-format.md 中的格式规范 - 智能体生成结构化的小分镜表 - ⚠️ 确认点:向用户展示小分镜表(关键分镜的预览),等待用户确认或调整
7. 生成分段TTS
- ⚠️ 所有TTS只能使用Vidu API!
- 策略分支:
- 若使用 viduq3 模型:跳过此步骤。viduq3 支持在生视频时直接生成对话和音效,无需单独生成TTS。
- 若使用 viduq2 模型:遍历小分镜表,为每个有台词的分镜生成语音。
- 调用 scripts/vidu_generate_audio.py,传入:text(台词)、voice_id(已确认的音色)、emotion(情绪)
- 脚本执行,返回音频文件URL
8. 生成视频片段
- ⚠️ 所有视频只能使用Vidu API!
- 模型选择:
- viduq3(推荐):支持长达16秒视频,支持对话和音效生成,提示词需包含台词。
- viduq2:仅生成画面,需配合TTS使用。
- 遍历小分镜表,为每个分镜生成视频片段
- 调用 scripts/vidu_generate_video.py
- 通用参数:images(参考图)、duration(时长)
- viduq3 特有参数:model="viduq3"、audio=True、prompt(包含台词的提示词)
- viduq2 特有参数:model="viduq2"、audio=False、prompt(仅画面描述)
- 脚本执行返回task_id,使用 scripts/vidu_query_task.py --task_id {task_id} --wait 轮询等待任务完成
- 智能体管理任务状态并收集视频片段
- ⚠️ 确认点:每生成一个视频片段,向用户展示预览,等待用户确认后继续下一个
9. 根据剧情、时间轴自动拼接成片 (第9个确认点)
- ⚠️ 我会直接执行:根据剧本剧情和小分镜表的时间轴,将生成的视频片段和语音文件整合,自动调用脚本进行拼接
- 生成时间轴配置JSON(见 references/timeline-config.md)
- 调用 scripts/merge_video_audio.py 拼接视频和音频,生成最终成片
- 支持转场效果、背景音乐混合
- ⚠️ 确认点:向用户展示拼接完成的成片,等待用户确认或调整
10. 最终交付 - 交付最终成片(MP4格式) - 交付时间轴配置文档 - 提供素材清单(所有视频片段、音频片段的来源信息)
scripts/vidu_generate_image.py 生成场景图,使用 scripts/vidu_query_task.py --task_id {task_id} --wait 获取结果
- 当需要仅生视频:只能使用Vidu API! 调用 scripts/vidu_generate_video.py 生成视频片段,使用 scripts/vidu_query_task.py --task_id {task_id} --wait 获取结果
- 当需要仅生语音:只能使用Vidu API! 调用 scripts/vidu_generate_audio.py 生成TTS语音(同步接口,直接返回结果)资源索引
注意事项
vidu_query_task.py --task_id {task_id} --wait 轮询等待完成,结果URL有效期24小时