production-validator

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Production Validator

生产验证器

Validate screenplays for AI video generation feasibility and prepare for Veo 3 production.
验证AI视频生成剧本的可行性,为Veo 3生产流程做准备。

Quick Start Workflow

快速开始工作流

1. RECEIVE screenplay XML from screenwriter skill
2. VALIDATE each scene for Veo 3 feasibility
3. CHUNK scenes >8 seconds into 8s segments
4. GENERATE continuation prompts for each chunk
5. TAG shot continuity relationships
6. OUTPUT validated XML ready for imagine/arch-v
1. 接收来自screenwriter skill的剧本XML文件
2. 验证每个场景的Veo 3可行性
3. 将时长超过8秒的场景拆分为8秒片段
4. 为每个片段生成续接提示词
5. 标记镜头连续性关联
6. 输出已验证的XML,供imagine/arch-v使用

Core Functions

核心功能

1. Feasibility Validation

1. 可行性验证

Score each scene element against Veo 3 capabilities:
Risk Levels:
  • LOW
    - Veo 3 handles well (single subject, simple motion, standard camera)
  • MEDIUM
    - May need iteration (moderate complexity, 2-3 subjects)
  • HIGH
    - Likely to fail (complex multi-object motion, text rendering)
  • CRITICAL
    - Will fail (impossible physics, conflicting movements)
Risky Elements Quick Check:
ElementRiskAI-Friendly Alternative
Multiple objects in motionHIGHFocus on one subject per beat
Text/signs visibleHIGHRemove text, add in post
Complex hand gesturesMEDIUMSimplify to basic poses
Dialogue + music togetherMEDIUMSeparate into distinct beats
Multiple camera movementsCRITICALOne movement per 8s chunk
Character without ref imageMEDIUMAdd detailed visual anchor
Rapid scene changesHIGHExtend individual beats
For full risky elements catalog: references/veo3-knowledge-base.md
根据Veo 3的能力对每个场景元素进行评分:
风险等级:
  • LOW
    - Veo 3可轻松处理(单一主体、简单动作、标准镜头)
  • MEDIUM
    - 可能需要迭代(中等复杂度、2-3个主体)
  • HIGH
    - 很可能失败(复杂多物体运动、文字渲染)
  • CRITICAL
    - 必然失败(违背物理规则、冲突动作)
风险元素快速检查:
元素风险等级AI友好替代方案
多物体同时运动HIGH每个节拍聚焦一个主体
可见文字/标识HIGH删除文字,后期添加
复杂手势MEDIUM简化为基础姿势
对话+音乐同时存在MEDIUM拆分为不同节拍
多镜头运动CRITICAL每个8秒片段仅一种镜头运动
无参考图像的角色MEDIUM添加详细视觉锚点
快速场景切换HIGH延长单个节拍时长
完整风险元素目录: references/veo3-knowledge-base.md

2. Scene Chunking (8-Second Rule)

2. 场景拆分(8秒规则)

Veo 3 generates maximum 8 seconds per clip. Scenes must be chunked:
Chunking Logic:
IF scene_duration <= 8s:
  → Single chunk (no split needed)
IF scene_duration > 8s AND <= 16s:
  → Split into 2 chunks
IF scene_duration > 16s:
  → Split into ceil(duration/8) chunks
Chunk Structure:
  • Each chunk: 6-8 seconds (prefer 8s for maximum content)
  • Continuation setup: End each chunk on clear visual anchor
  • Continuation prompt: Reference previous chunk's ending
For detailed chunking workflow: references/chunking-workflow.md
Veo 3每个片段最多生成8秒内容,因此需要对场景进行拆分:
拆分校验逻辑:
IF scene_duration <= 8s:
  → 单个片段(无需拆分)
IF scene_duration > 8s AND <= 16s:
  → 拆分为2个片段
IF scene_duration > 16s:
  → 拆分为ceil(duration/8)个片段
片段结构:
  • 每个片段:6-8秒(优先8秒以容纳更多内容)
  • 续接设置:每个片段结尾设置清晰的视觉锚点
  • 续接提示词:参考前一个片段的结尾内容
详细拆分工作流: references/chunking-workflow.md

3. Continuity Tagging

3. 连续性标记

Tag shot relationships for editing:
Shot Relationships:
  • new
    - Fresh scene, no connection to previous
  • continues_from_[id]
    - Direct continuation of previous chunk
  • match_cut_from_[id]
    - Visual match to previous shot
  • jump_cut_from_[id]
    - Same subject, different angle/time
Transition Types:
  • hard_cut
    - Instant transition (default)
  • dissolve
    - Gradual blend (passage of time)
  • fade
    - Fade to/from black (scene break)
  • wipe
    - Stylized transition
For continuity system details: references/continuity-tagging.md
为剪辑标记镜头关联:
镜头关联类型:
  • new
    - 全新场景,与前序内容无关联
  • continues_from_[id]
    - 直接续接前一个片段
  • match_cut_from_[id]
    - 与前一个镜头视觉匹配
  • jump_cut_from_[id]
    - 同一主体,不同角度/时间
转场类型:
  • hard_cut
    - 硬切(默认)
  • dissolve
    - 溶解渐变(表示时间流逝)
  • fade
    - 淡入淡出(场景切换)
  • wipe
    - 划像转场(风格化转场)
连续性系统详情: references/continuity-tagging.md

4. Prompt Optimization

4. 提示词优化

Transform screenplay action into Veo 3-optimized prompts:
Prompt Structure:
[Shot type + Camera] [Subject description] [Action] [Setting] [Lighting] [Style] [Audio] [Constraints]
Optimization Rules:
  1. ONE camera movement per chunk
  2. Subject description in first 50 words
  3. Specific cinematic terms (dolly, crane, track)
  4. Include audio cues (ambient, SFX, dialogue)
  5. Add negative prompts for common issues
For optimization patterns: references/prompt-optimization.md

将剧本动作转换为适配Veo 3的优化提示词:
提示词结构:
[镜头类型 + 机位] [主体描述] [动作] [场景] [灯光] [风格] [音频] [约束条件]
优化规则:
  1. 每个片段仅包含一种镜头运动
  2. 主体描述放在前50个词内
  3. 使用特定电影术语(如dolly、crane、track)
  4. 包含音频提示(环境音、音效、对话)
  5. 添加针对常见问题的反向提示词
优化模式参考: references/prompt-optimization.md

Input Format (from screenwriter)

输入格式(来自screenwriter)

xml
<scene number="1" duration="30s">
  <slugline>EXT. WASTELAND - DAWN</slugline>
  <location>Wasteland</location>
  <time>Dawn</time>
  <characters>Unit-7</characters>
  <mood>desolate, lonely</mood>
  <key_visuals>
    <visual>post-apocalyptic wasteland</visual>
    <visual>boxy robot with blue optical sensor</visual>
  </key_visuals>
  <action>
Robot rolls across wasteland. Discovers flower between concrete slabs.
  </action>
</scene>
xml
<scene number="1" duration="30s">
  <slugline>EXT. WASTELAND - DAWN</slugline>
  <location>Wasteland</location>
  <time>Dawn</time>
  <characters>Unit-7</characters>
  <mood>desolate, lonely</mood>
  <key_visuals>
    <visual>post-apocalyptic wasteland</visual>
    <visual>boxy robot with blue optical sensor</visual>
  </key_visuals>
  <action>
Robot rolls across wasteland. Discovers flower between concrete slabs.
  </action>
</scene>

Output Format

输出格式

xml
<validated_scene number="1" original_duration="30s">
  <feasibility_check>
    <risk_score>LOW</risk_score>
    <risky_elements>
      <element risk="NONE">Single subject - optimal for Veo 3</element>
    </risky_elements>
    <safe_for_veo3>true</safe_for_veo3>
  </feasibility_check>
  
  <chunks>
    <chunk id="1a" duration="8s">
      <shot_type>establishing</shot_type>
      <shot_relationship>new</shot_relationship>
      <action>Wide establishing shot of post-apocalyptic wasteland...</action>
      <veo3_prompt>
Cinematic establishing shot, wide angle, post-apocalyptic wasteland with ruined 
skyscrapers silhouetted against pale sun, gray dust covering cracked ground, 
thick smog atmosphere, slow dolly forward, golden hour lighting through 
pollution, photorealistic, high detail. Audio: wind howling, distant debris 
settling. negative prompt: no text, no multiple moving objects
      </veo3_prompt>
      <camera_movement>Slow dolly forward</camera_movement>
      <continuation_setup>Camera ends focused on ground-level debris field</continuation_setup>
    </chunk>
    
    <chunk id="1b" duration="8s" continues_from="1a">
      <shot_type>continuation</shot_type>
      <shot_relationship>continues_from_1a</shot_relationship>
      <action>Medium shot: Robot (Unit-7) enters frame...</action>
      <veo3_prompt>
[CONTINUATION] Medium shot, boxy robot with weathered chrome body and glowing 
blue optical sensor rolls across cracked asphalt from left, mechanical treads 
leaving marks in gray dust, slow deliberate movement, same wasteland environment, 
maintain lighting and atmosphere, static camera. Audio: mechanical whirring, 
treads on gravel. negative prompt: no lighting change, no character drift
      </veo3_prompt>
      <camera_movement>Static (robot enters frame)</camera_movement>
      <continuation_setup>Robot reaches pile of rubble</continuation_setup>
    </chunk>
    
    <chunk id="1c" duration="8s" continues_from="1b">
      <shot_type>reveal</shot_type>
      <shot_relationship>continues_from_1b</shot_relationship>
      <action>Close-up: Robot discovers flower...</action>
      <veo3_prompt>
[CONTINUATION] Close-up shot, small yellow flower with delicate petals between 
gray concrete slabs, robot's blue optical sensor visible in frame (slight dilation 
suggesting surprise), weathered metal fingers slowly reaching toward flower, 
shallow depth of field, same golden lighting, intimate moment. Audio: gentle wind, 
mechanical servo whir. negative prompt: no hand distortion, maintain flower detail
      </veo3_prompt>
      <camera_movement>Slow dolly closer to flower</camera_movement>
      <editing_transition>Hold final frame for dissolve</editing_transition>
    </chunk>
  </chunks>
  
  <editing_notes>
    - Chunks 1a-1c flow continuously (24s total)
    - Smooth cuts between chunks (maintain spatial continuity)
    - Final frame (flower close-up) holds for transition to next scene
    - Character consistency: Repeat "boxy robot, weathered chrome, blue optical sensor"
  </editing_notes>
</validated_scene>

xml
<validated_scene number="1" original_duration="30s">
  <feasibility_check>
    <risk_score>LOW</risk_score>
    <risky_elements>
      <element risk="NONE">Single subject - optimal for Veo 3</element>
    </risky_elements>
    <safe_for_veo3>true</safe_for_veo3>
  </feasibility_check>
  
  <chunks>
    <chunk id="1a" duration="8s">
      <shot_type>establishing</shot_type>
      <shot_relationship>new</shot_relationship>
      <action>Wide establishing shot of post-apocalyptic wasteland...</action>
      <veo3_prompt>
Cinematic establishing shot, wide angle, post-apocalyptic wasteland with ruined 
skyscrapers silhouetted against pale sun, gray dust covering cracked ground, 
thick smog atmosphere, slow dolly forward, golden hour lighting through 
pollution, photorealistic, high detail. Audio: wind howling, distant debris 
settling. negative prompt: no text, no multiple moving objects
      </veo3_prompt>
      <camera_movement>Slow dolly forward</camera_movement>
      <continuation_setup>Camera ends focused on ground-level debris field</continuation_setup>
    </chunk>
    
    <chunk id="1b" duration="8s" continues_from="1a">
      <shot_type>continuation</shot_type>
      <shot_relationship>continues_from_1a</shot_relationship>
      <action>Medium shot: Robot (Unit-7) enters frame...</action>
      <veo3_prompt>
[CONTINUATION] Medium shot, boxy robot with weathered chrome body and glowing 
blue optical sensor rolls across cracked asphalt from left, mechanical treads 
leaving marks in gray dust, slow deliberate movement, same wasteland environment, 
maintain lighting and atmosphere, static camera. Audio: mechanical whirring, 
treads on gravel. negative prompt: no lighting change, no character drift
      </veo3_prompt>
      <camera_movement>Static (robot enters frame)</camera_movement>
      <continuation_setup>Robot reaches pile of rubble</continuation_setup>
    </chunk>
    
    <chunk id="1c" duration="8s" continues_from="1b">
      <shot_type>reveal</shot_type>
      <shot_relationship>continues_from_1b</shot_relationship>
      <action>Close-up: Robot discovers flower...</action>
      <veo3_prompt>
[CONTINUATION] Close-up shot, small yellow flower with delicate petals between 
gray concrete slabs, robot's blue optical sensor visible in frame (slight dilation 
suggesting surprise), weathered metal fingers slowly reaching toward flower, 
shallow depth of field, same golden lighting, intimate moment. Audio: gentle wind, 
mechanical servo whir. negative prompt: no hand distortion, maintain flower detail
      </veo3_prompt>
      <camera_movement>Slow dolly closer to flower</camera_movement>
      <editing_transition>Hold final frame for dissolve</editing_transition>
    </chunk>
  </chunks>
  
  <editing_notes>
    - Chunks 1a-1c flow continuously (24s total)
    - Smooth cuts between chunks (maintain spatial continuity)
    - Final frame (flower close-up) holds for transition to next scene
    - Character consistency: Repeat "boxy robot, weathered chrome, blue optical sensor"
  </editing_notes>
</validated_scene>

Validation Workflow

验证工作流

Step 1: Parse Input

Step 1: 解析输入

RECEIVE XML from screenwriter
EXTRACT: duration, characters, key_visuals, action
VALIDATE: Required fields present
RECEIVE XML from screenwriter
EXTRACT: duration, characters, key_visuals, action
VALIDATE: Required fields present

Step 2: Risk Assessment

Step 2: 风险评估

FOR each scene:
  SCAN action for risky elements (see knowledge base)
  CALCULATE risk_score based on element count/severity
  FLAG elements that need optimization
  SUGGEST alternatives for HIGH/CRITICAL elements
FOR each scene:
  SCAN action for risky elements (see knowledge base)
  CALCULATE risk_score based on element count/severity
  FLAG elements that need optimization
  SUGGEST alternatives for HIGH/CRITICAL elements

Step 3: Chunking

Step 3: 场景拆分

IF duration > 8s:
  CALCULATE chunk_count = ceil(duration / 8)
  DISTRIBUTE action across chunks
  ENSURE each chunk has:
    - Clear subject/action
    - One camera movement
    - Continuation setup (except last)
IF duration > 8s:
  CALCULATE chunk_count = ceil(duration / 8)
  DISTRIBUTE action across chunks
  ENSURE each chunk has:
    - Clear subject/action
    - One camera movement
    - Continuation setup (except last)

Step 4: Prompt Generation

Step 4: 提示词生成

FOR each chunk:
  BUILD veo3_prompt using structure:
    [Camera + Shot] + [Subject] + [Action] + [Setting] + 
    [Lighting] + [Style] + [Audio] + [Negative prompts]
  ADD [CONTINUATION] prefix if continues_from previous
  INCLUDE character description repetition for consistency
FOR each chunk:
  BUILD veo3_prompt using structure:
    [Camera + Shot] + [Subject] + [Action] + [Setting] + 
    [Lighting] + [Style] + [Audio] + [Negative prompts]
  ADD [CONTINUATION] prefix if continues_from previous
  INCLUDE character description repetition for consistency

Step 5: Continuity Tagging

Step 5: 连续性标记

FOR each chunk:
  SET shot_relationship based on connection
  SET camera_movement (ONE per chunk)
  SET continuation_setup (visual anchor for next)
  SET editing_transition if applicable
FOR each chunk:
  SET shot_relationship based on connection
  SET camera_movement (ONE per chunk)
  SET continuation_setup (visual anchor for next)
  SET editing_transition if applicable

Step 6: Output

Step 6: 输出

GENERATE validated_scene XML
INCLUDE: feasibility_check, chunks, editing_notes
VALIDATE: All chunks ≤8s, all have veo3_prompt

GENERATE validated_scene XML
INCLUDE: feasibility_check, chunks, editing_notes
VALIDATE: All chunks ≤8s, all have veo3_prompt

Integration with Pipeline

流水线集成

Receives from:
screenwriter
(XML with scene, duration, action)
Feeds into:
  • imagine
    skill - Uses veo3_prompts for still image generation (Path 2)
  • arch-v
    skill - Uses continuation metadata, camera movements, audio cues
Cross-references:
  • camera-movements
    skill - Validates camera movement terminology
  • great-prompt-anatomy
    skill - Validates 8 mandatory prompt components
  • long-prompt-guide
    /
    short-prompt-guide
    - Applies appropriate prompt methodology

接收自:
screenwriter
(包含场景、时长、动作的XML文件)
输出至:
  • imagine
    skill - 使用veo3_prompts生成静态图像(路径2)
  • arch-v
    skill - 使用续接元数据、镜头运动、音频提示
交叉引用:
  • camera-movements
    skill - 验证镜头运动术语
  • great-prompt-anatomy
    skill - 验证8项必填提示词组件
  • long-prompt-guide
    /
    short-prompt-guide
    - 应用合适的提示词方法论

Success Criteria

成功标准

  • ✅ All scenes chunked into ≤8 second segments
  • ✅ Each chunk has continuation instructions
  • ✅ Risk scoring for Veo 3 feasibility
  • ✅ Clear continuity tags for editing
  • ✅ Optimized prompts for each chunk
  • ✅ Character consistency maintained via description repetition
  • ✅ 所有场景均拆分为≤8秒的片段
  • ✅ 每个片段都包含续接说明
  • ✅ 完成Veo 3可行性风险评分
  • ✅ 为剪辑提供清晰的连续性标记
  • ✅ 为每个片段生成优化后的提示词
  • ✅ 通过重复描述保持角色一致性