# Video Direction

> Direct source-text-based video generation with explicit state continuity, physical performance, minimal segment count, structured shot timing, reference identity, sound relationships, and executable final prompts.

- Skill: `waooai/video-direction` (Agent Skill)
- Install (CLI): `npx skillmds@latest add waooai/video-direction`
- Raw SKILL.md: https://api.skillmd.com/api/skills/waooai/video-direction/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: waooai (https://skillmd.com/u/waooai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/waooai/video-direction

---


# 视频导演与生成设计

## 作用

把已经成立的内容事实（剧情、产品行为、主张顺序）组织成可执行导演设计，并为每个独立生成分段写一份结构化最终提示词。本 Skill 是 `outputKind=video_generation_batch` 的唯一专业 Skill：镜头、表演、构图、声音、连续性、装段与接缝判断全部内化进每段唯一 `prompt`，最终只返回 strict `video_generation_batch`，不输出平行导演表、时间线或解释文件。

## 事实与时长权威

- 源文本（剧本、商业脚本或其他脚本）、用户明确要求、已确认资产、入段状态和已采纳 Creative Direction 是唯一事实。不得新增源文本没有的人物、对白、地点、道具、动作、动机、停顿、主张、屏幕文字、CTA 或结局；对白、旁白与屏幕文字逐字保留。
- 精确源文本存在时，它独占事件顺序和 `mode=derive` 演出时间线。Creative Direction、题材、画幅、3D/写实风格、镜头数量、声音与转场只决定怎样呈现，不能创造额外剧情时间。
- 严格按“整片时间线 → 导演设计 → 生成装段”工作。不要先给每个镜头或节拍分配一段 Provider 时长再相加。
- `durationIntent.mode=fixed` 时，全部 Segment 时长之和必须准确等于用户总秒数。`mode=derive` 时，只按自然对白、不能并行的来源动作和来源明确要求的停顿估算最短清楚时长；并行动作不重复累加。
- 禁止用重复动作、无信息空镜、拖慢转头、额外反应、题材留白或装饰性转场填充时长。

## 完整作品的规划纪律

以下纪律只约束计划质量，不改变任何 Operation 的合法输入，也不构成服务端门槛：

- 先识别当前交付物以及与执行相关的总时长、画幅、风格、内容、人物、声音和合成需求，只补真实缺口。
- 总时长超过 15 秒的完整视频作品：开始视频生产前，先创建或复用一份匹配的文本 Creative Direction，以及最终视频真正会复用的角色、场景、道具资产；这不授权任何视觉风格参考图。该作品还必须通过配乐 Skill 声明的收尾检查点获得明确的配乐决定，除非用户已经决定；绝不静默假设无配乐。
- 总时长超过 180 秒：按文件夹结构组织为独立生成的单元，并按 creative-core 的续作状态锚定在单元之间显式传递状态；这不是固定分支。
- 续写已有作品时，先读覆盖续写点的源文本和最近一次交付批次的出口状态，绝不凭资产、印象或摘要重新想象当前状态；可变状态永远覆盖资产的默认外观，资产只锁定身份与设计。
- 音色一致：同一人物在两个以上独立生成的镜头中说话时，在依赖它的视频提示词之前创建并绑定一个稳定音色；单独一个孤立的说话镜头不需要。生成的稳定音色试听样本必须是语音多样的句子，满足音色工具的文本长度限制；不能是名字、应答词或其他极短片段。用于视频前检查实际音频时长，不能假定它满足视频参考音频上限。
- 交付完整作品前逐项检查：跨镜头复用的可见人物、场景、道具都有参考资产；跨镜头复用的说话人物有一个稳定音色；每个生成分段自带对白和必要声音；全部分段使用同一项目画幅；超过 15 秒的成品有明确配乐决定。

## 内部状态表

写提示词前，在内部为每个镜头记录入口与出口，不把状态表作为输出字段。至少检查：

- 人物：身份、服装、身体状态、情绪强度、所在位置、身体朝向、视线目标。
- 道具：持有者、位置、开合/亮灭/损坏等状态。
- 场景：时间、光线、天气、关键结构和不可突然复制的主体。
- 信息：人物与观众已经知道什么，揭示是否已经发生。
- 声音：正在持续、刚停止、需要跨镜延续或尚未出现的声音。

后一镜头入口必须等于前一镜头出口再加上本镜头的新变化。人物已经完成拿取、转身、起身、到达、开门或说完一句话后，下一镜头直接从完成状态继续，不能换景别重演。

## 导演设计

- 每个镜头承担一个明确叙事任务：建立空间、推进动作、呈现反应、揭示信息、改变关系或完成落点。
- 每个时间块围绕一个核心节拍，可以包含完成该节拍所需的因果微动作，但必须有可见入口、变化和落点。动作使用物理动词，不解释人物内心。
- 有人物的普通镜头必须写清景别、机位关系、主体落位、身体朝向、视线目标和一种主要运镜。参考图只锁定身份与设计，不继承资产板的正面居中、姿态或直视镜头。
- 相邻镜头改变信息尺度与构图；居中、对称或直视只在剧情明确需要时使用。默认把人物放在三分线或前中后景关系中，把负空间留给其视线或运动方向。
- 镜头只向前推进。后一镜头第一帧必须晚于前一镜头最后一帧；改变角度、加特写或换景别名称都不能把同一动作再展示一次。
- 同一 Segment 内可在动作进行中切镜：前镜承载动作前半，后镜从动作后半继续。不同 Segment 之间必须落在已完成节拍上，后段从下一个新节拍开始。
- 一个时间段需要多个亚秒镜头时，写成一个“快切组”：整组共享一个动作链或视觉母题、一个时间段与一条银幕方向，不逐 cut 标秒；结束后回到明确落点。快切组不得跨 Segment。
- 先判断转场是否必要。同一时空通常直接切换；只有时空跳跃、时间压缩、情绪转折或视觉母题确有收益时使用一个清楚的物理转场，并写明前镜终点和后镜起点。不得依赖叠化或主体变形。

## 表演设计

- 表演只写可见物理事实，禁止情绪形容词与内心解释（“愤怒地”“她很紧张”“想起了往事”）。把情绪翻译成呼吸、手部、下颌、肩颈、步态和视线停留时长的具体变化：写“呼吸变浅，指节抵住桌沿”，不写“她很紧张”。
- 优先低幅度描述。视频模型倾向把情绪词演成过火的表情和夸张手势；“下颌收紧、语速放慢、目光在对方脸上多停了一拍”这类小幅物理动作比高强度情绪词更稳定可控。需要强表演时，把强度写进动作本身（摔门、掀翻椅子），不写进情绪副词。
- 反应有层级。重大信息的反应按“僵住 → 确认（回看、靠近、再读一遍）→ 释放（行动、崩溃或压下去）”推进，每个镜头只承载其中一层；不许一步到位地大哭大叫，除非剧本明确写了。
- 潜台词用身体与台词的反差呈现：嘴上说“我没事”，手指在袖口里收紧。反差只能建立在剧本已有的情绪事实上，不得借此发明剧情。
- 一个镜头内最多一次情绪变化，且必须由本镜头内可见事件触发。持续情绪写成持续的身体状态（肩线一直绷着），不逐镜头重新表演一遍。
- 表演幅度按题材校准并全片保持同一基准：短剧外放但不失真，电影克制，喜剧靠节奏与停顿而非鬼脸，广告与产品内容靠可见的产品动作和受控编舞而非表情夸张。

## 装段与接缝

- Segment 是执行容器，不是剧情节拍。分段数最少优先：除尾部余量组合外，使用 `create_video` 工具 schema 中 `durationSeconds` 最大允许值；尾部用最少数量的允许时长精确补齐。
- 时空切换不是缩短 Segment 的理由，应写为同一提示词内部的镜头切换。不得把未完成动作切到两次独立生成。
- 多段结果中，非首段必须写 `[入口状态]`，非末段必须写 `[出口状态]`；两者逐项对齐人物落位、朝向、视线、道具、环境、已完成节拍和持续声音。
- 逐对检查相邻 Segment：前段末镜头与后段首镜头必须有真实可见的景别变化，而且时间继续前进。只换角度、只改景别名称或重拍前段落点都不合格。
- 跨段不宣称帧级无缝插值。保持身份、服装、道具状态、空间锚点、光线与声音相容，同时让两个独立画面自然可剪。

## 参考素材

- 视频模型由设置固定，不填写 `model`；根据当前 `create_video` 工具 schema 描述的 `supportedInputModes` 组织参考素材。输入模式由服务端从 reference 角色推导，不额外提交模式字段。不支持的模式不得提交，也不得自动降级。
- `text_to_video` 不传媒体参考；`first_frame` 恰好传一张 `role=first_frame` 图片；`first_last_frame` 恰好传一张 `role=first_frame` 和一张 `role=last_frame` 图片；`reference` 使用 `role=reference_image`、`reference_audio`、`reference_video`，并遵守工具描述的各通道数量与总文件数上限。
- 按当前工具的 `options` 填写未固定参数；固定分辨率、生成音频开关由服务端取配置，不在 item 中重复填写。工具没有 `options` 时省略它。
- 帧模式与参考模式互斥。普通参考图永远不是首帧；只有创意明确要求画面从该图开始运动时才使用 `first_frame`。末帧不能单独存在。
- 图片、声音和视频各自按传入顺序独立编号。中文提示词使用 `@图片N` / `@音频N` / `@视频N`，英文使用 `@Image N` / `@Audio N` / `@Video N`；不要混写双重编号。
- `[参考]` 中每个引用用一句话声明唯一主要用途，例如角色身份、场景结构、关键道具、锁定音色或参考运动。每个 item 的 `references` 只列当前 Segment 实际使用的 ready Resource，精确复制 `resourceId`、`contentVersion`、`role` 与 `channel`，并按 Prompt 中各媒体的使用顺序排列。内部位置由服务端生成；路径不是 Resource 身份，不得提交。
- 不传无关素材，不从文件名、近似名称或描述猜身份，不让参考图的偶然构图、姿态、光线或噪点代替本段导演判断。
- `reference_audio` 是视频模型的内容条件，不是 `generateAudio` 开关，也不是后期背景音乐；当 `referenceAudioRequiresVisual=true` 时，必须同时提供至少一个 `reference_image` 或 `reference_video`。同时遵守工具声明的单条最小时长和全部参考音频总时长上限；多角色时使用满足音色生成要求且实际时长符合视频上限的样本，不得把每个角色的完整台词都当参考音频。过长时停止提交并说明能力不匹配，不自动截取或忽略音色。`reference_video` 是运动/内容条件，只在 `maxReferenceVideos > 0` 时使用。

## 对白与声音

- 台词格式为 `角色名（≤3 个声音质感词）：{逐字台词}`。说话人必须出镜或被明确设置为画外来源，口型与自然语速匹配，句子必须在所在时间块结束前说完。
- 绑定音色只定义固有声音身份，忽略试听文字。台词指令同时引用角色图片和其声音编号，不同角色不得串音。
- 每个时间块只写当前可听到的对白、动作声与环境声，使用具体质感词；不写 BGM，不把同一声音在每个镜头重新触发。
- 主动判断声音关系：同期发生、先于来源画面出现、跨镜持续、画外说话者后续揭示，或无需特殊关系。需要时写清开始、持续、减弱或停止的时刻与来源。

## 最终提示词格式

每个 Segment 使用以下顺序。省略不适用行，但不得省略适用事实：

```text
[风格] 题材 + 已确认视觉政策 + 2–3 个材质/光线关键词
[时长] N 秒
[参考] @图片1——明确用途；@音频1——明确用途；@视频1——明确用途
[入口状态] 非首段必写：承接上段出口，并说明已完成节拍
[场景] 地点、时间、光线、空气与关键空间锚点
[00:00–00:0X] 镜头1：景别 + 机位 + 主体落位 ｜ 一种主要运镜
画面：入口状态 → 一个核心节拍 → 可见落点
表演：可见表情、身体反应、朝向与世内视线目标
台词：角色名（质感词）：{逐字台词}
声音：<同步声音与必要的跨镜关系>
[00:0X–00:0Y] 镜头2：……
[出口状态] 非末段必写：最后一帧人物/道具/环境/声音的可继承状态
[收尾] 末段必写：最终可见结局，不增加剧本外尾声
[整体声音] 只写贯穿或跨镜变化，不重复逐拍声音
[约束] 固定约束句
```

格式纪律：

- 重要信息前置；每个时间块最多数句，短而具体。
- 一镜一种主要运镜，一个时间块一个核心节拍；复杂动作拆成向前推进的连续节拍。
- 非首段从“下一个节拍”开始，不重述或重演 `[入口状态]` 中已经完成的内容。
- `[收尾]` 是剧本结局的最后可见状态，不是额外定格动作；少量尾部执行余量只能停驻在这个既有落点。
- 含人物的提示词固定写入：`人物视线落在场景内明确对象上，不与镜头交汇。` 明确打破第四面墙的内容除外。
- 含两个以上镜头的提示词固定写入：`镜头之间禁止叠化、交叉溶解、淡入和淡出；前后画面不得透明重叠。`
- 固定写入：`不生成字幕、标题、水印、拼贴、分屏或额外人物。`

## 输出前检查

- 内容、对白、屏幕文字和结局是否完全来自来源，固定总时长是否精确？
- 是否先建立整片时间线，再设计镜头，最后装段？
- 每个镜头是否有新节拍、可见入口和落点，时间是否从不回退？
- 人物镜头是否写清景别、机位、落位、朝向、视线与一种主要运镜？
- 表演是否全部为可见物理事实、无情绪形容词与内心解释？重大反应是否分层推进、每镜头一层？
- 每对跨段接缝是否同时满足景别变化、时间前进和状态对齐？
- 图片/声音编号、用途和 `references` 是否精确且只包含实际使用素材？
- 对白是否逐字、自然说完、音色不串；声音是否只触发一次并按需要延续？
- 创意转场是否真的必要，且没有叠化、透明混合或主体变形？
- 最终 Prompt 是否只含视频模型需要执行的画面与声音，没有内部分析或平行过程字段？

## 边界

本 Skill 负责视频导演方法、最终提示词，以及按当前工具 schema 为每段填写创作参数；模型由系统配置决定。能力事实只读取当前工具声明；项目画幅由服务端项目配置唯一决定，不作为生成 item 或 Prompt 参数重复提交。`video_generation_batch` 的结构由运行时提供的机器 Schema 定义，模型相关取值由当前工具约束；Resource 身份校验、Provider 执行、计费、Task 与合成由系统负责。

