附录 E:Prompt 与镜头配方库

工具附录

附录 E:Prompt 与镜头配方库#

本章目录
E.1 通用配方头E.2 单人微表演近景E.3 单人短对白E.4 双人反打E.5 双人道具交接E.6 三人对峙E.7 群戏建立镜E.8 角色行走入场E.9 手部与关键道具插入E.10 手机与屏幕E.11 合同与纸张E.12 雨夜角色E.13 闪回角色年龄状态E.14 动态漫面板E.15 长旁白单元E.16 音乐延展E.17 获取素材 Prompt 的禁区E.18 配方晋升规则E.19 最终检查表

本附录提供可复制的语义配方。它们不是对某一模型永久有效的“咒语”,而是从任务、事实、状态、参考、约束、验收和停止规则组成的供应商无关母版。实际调用由 Prompt 编译器转换,并保存 Manifest。

E.1 通用配方头#

recipe:
  recipe_id: recipe_video_single_closeup_v3
  applies_to: [single_character, closeup, subtle_performance]
  does_not_apply_to: [fast_turn, full_body_contact, exact_text]
  narrative_job: 当前镜头唯一必须完成的状态变化
  state_in: {}
  state_out: {}
  identity_contracts: []
  environment_contract: null
  required_visible: []
  forbidden: []
  references: []
  controlled_variables: []
  acceptance: {}
  stop_rule: {}
  fallback_routes: []

使用顺序:先填叙事工作和初终态,再选身份与环境,之后才写风格与镜头。若初终态无法表达,不进入生成。

E.2 单人微表演近景#

适合发现秘密、压住愤怒、短句反应;不适合边走边转边长对白。

narrative_job: 林夏从程序自信转为发现时间矛盾
state_in: {gaze: document_title, breath: even, jaw: relaxed}
state_out: {gaze: timestamp, breath: held_0_4s, jaw: slightly_set}
identity: lin_xia_v03
performance:
  intensity_0_5: 2
  observable: [eyes_stop_scanning, one_short_inhale, no_head_recoil]
camera: {size: closeup, lens_mm: 85, movement: static}
required_visible: [left_eye_mole, timestamp_reflection_subtle]
forbidden: [crying, wide_eye_shock, smile, face_shape_change]
acceptance: {identity_min: 0.93, intent_readable: true, handles_frames: 8}

正例只改变目光和呼吸;反例写“极度震惊、电影感、情绪爆发”,模型会用夸张眉眼代替具体判断。连续两次身份在张嘴或转头时失败,先减少运动或拆成闭口反应,不继续堆负面词。

E.3 单人短对白#

台词任务包含文本、思想重音、呼吸、对象、动作前后和目标时长。

line: 会议继续。
intent: assert_procedural_control
subtext: 我不是请求参与,而是在接管议程
target: char_lin_wei
before: sit_down_and_set_folder
during: maintain_eye_contact
after: hold_0_35s
pace_s: 0.92
voice_contract: voice_lin_v05
lip_sync_tolerance_ms: 80

先生成身体表演,再做短口型。超过一个思想单元的台词拆句或用反应覆盖。口型通过但表演意图错,仍然失败。

E.4 双人反打#

每个反打写屏幕侧、视线目标、背景地标和对方位置。对方不一定完整入画,但共同空间必须存在。

axis: axis_lin_wei_table
subject: lin_xia
screen_side: left
eyeline_target: lin_wei_eye_world_coordinate
background_landmarks: [north_window_edge, chair_07]
offscreen_partner_state: seated_at_north_chair
action: listens_then_interrupts
forbidden: [look_into_camera, mirrored_background, partner_identity_swap]

不要分别提示“看向左边”和“看向右边”,应绑定世界目标。镜头翻转会影响轴线、发缝、伤势和文字,默认禁止。

E.5 双人道具交接#

action_contract:
  object: red_contract_folder
  start: {holder: lin_left_hand, gu_right_hand: on_table}
  peak: {dual_grip: true, min_frames: 6, direction: screen_left_to_right}
  end: {holder: gu_right_hand, lin_left_hand: released}
  camera: {size: medium_two_shot, movement: subtle_push}
  forbidden: [object_duplicate, hand_swap, finger_fusion, eye_contact_break]
  fallback: [lin_hand_insert, folder_slide, gu_hand_insert]

先做三张状态帧,再连接。完整交接成功前先生成保险覆盖。不要把说话、转头、递物、站起和绕桌放进同一镜。

E.6 三人对峙#

固定槽位与动作所有权。核心动作发生时,第三人只做目光或静止反应。

cast_layout:
  foreground_left: {character: lin, action: slides_evidence}
  midground_right: {character: gu, action: receives}
  background_center: {character: wei, action: gaze_shift_only}
feature_ownership:
  left_eye_mole: lin
  silver_collar_pin: gu
  gold_earrings: wei

若特征串位,先降低同时可见细节、调整槽位与参考,不只写“不要串脸”。

E.7 群戏建立镜#

群戏全景负责空间和阵营,不负责六人精细表演。

crowd_layers:
  core: [lin, wei, gu, chair]
  reaction: [director_b, reporter]
  atmosphere: {count_band: 20_30, motion: low, identity_detail: low}
space: venue_plan_v04
primary_read: lin_enters_from_media_zone_to_stage
forbidden: [synchronized_reaction, repeated_faces, random_camera_gaze]

核心角色可分别生成后合成。检查比例、接触阴影、景深、光向和地面关系。

E.8 角色行走入场#

行走是身份、全身、脚步和空间移动的高风险组合。把路线限制为一个方向和短距离,首尾帧锁位置。

start: outside_east_door
end: south_table_mark
distance_m: 2.2
direction: screen_left_to_right
gait: controlled_medium
head_motion: minimal
camera: static_medium_full
handles: {before_steps: 8, after_stop: 12}

脚步滑动连续失败时,拆门把、鞋跨门槛、半身停步与反应。叙事通常比一镜到底更有压力。

E.9 手部与关键道具插入#

道具插入不需要主角完整脸,但必须继承袖口、首饰、手侧、材质、光线和运动方向。

hand_identity: lin_left_hand
wardrobe_cuff: charcoal_suit_ivory_shirt
accessory: silver_watch_left_wrist
prop: red_folder_closed
surface: dark_walnut_table
action: press_then_slide_18cm_right
lighting: cool_window_key_from_north

生成后逐帧检查指数量、穿透、复制、接触和终态。漂亮手部若运动方向错误不可用。

E.10 手机与屏幕#

生成任务只负责硬件、手和空白容器;UI 由事实层后期合成。

hardware_shot:
  hand: lin_right
  device_orientation: portrait
  screen_container: neutral_trackable
  interaction: left_thumb_tap
  environment_reflection: boardroom_soft
ui_overlay:
  fact_refs: [offer_received, timestamp]
  ocr_exact: true
  state_change_after_touch_frames: 3

文字生成看似省工,实际让修改、翻译与 QC 失控。任何金额、姓名、时间和聊天事实都独立渲染。

E.11 合同与纸张#

纸张动作与文字分层。底层生成翻页和文件夹,中层跟踪纸面,上层渲染事实。

验收包括纸张方向、页数连续、手部持有、文字透视、运动模糊、景深和 OCR。随机伪正文可模糊,但标题和金额必须准确。

E.12 雨夜角色#

weather: {rain: steady_medium, wind: northwest_to_southeast}
wetness: {shoulders: 0.55, hair_ends: 0.65, face: 0.08}
light_sources: [hospital_canopy_neutral, streetlamp_warm_edge]
identity_lock: lin_v03
required: [left_hair_part_visible, rain_contact_on_shoulders]
forbidden: [dry_hair, random_front_fill, rain_direction_change]

人物与雨可分层生成,湿度状态必须传播。雨线、地面飞溅、衣物水膜和声音共同建立物理。

E.13 闪回角色年龄状态#

年龄变化是状态,不是换身份。

identity: lin_v03
story_age_delta: -3_years
allowed_changes: [hair_down, lighter_makeup, earlier_wardrobe, posture_less_guarded]
immutable: [face_proportion, eye_color, mole_position]
time_assets: office_version_2023
memory_scope: only_what_lin_observed

闪回不得展示回忆者不知道的客观信息。时间差由资产、行为、声音和有限色彩共同表达。

E.14 动态漫面板#

panel:
  narrative_job: 姓名牌被删除
  composition: vertical_close_insert
  layers: [door, plate, hand, metal_fragment, shadow]
  motion: [hand_scrape_8px, fragment_fall, camera_push_4_percent]
  duration_s: 3.2
  sound: metal_scrape_pre_lap
  exit: lin_hand_stops_plate

每个 Panel 只有一项主要信息运动。禁止所有面板统一缓推、随机粒子和句句口型。

E.15 长旁白单元#

narration_unit:
  thought_job: 怨恨转为怀疑
  entry: defensive
  turn_word: 但是
  exit: unsettled
  breath_points: [after_claim, before_turn, before_name]
  voice_anchor: voice_lin_anchor_08s
  visual_relation: counterpoint
  music_state: father_theme_sparse

按思想切分,不按字数。拼接检查心理方向、音区、距离和呼吸。制作删掉 30% 的压力版,识别重复解释。

E.16 音乐延展#

输入主题、调性、速度、拍号、动机、分轨状态、进入小节和叙事出口。不写“生成一段紧张 BGM”。

music_extension:
  theme: countermove_v03
  key: D_minor
  bpm: 92
  bars: 16
  stems_in: [pulse, low_strings]
  add_at_bar_9: sparse_percussion
  remove_at_bar_13: pulse
  exit: unresolved_hold

若剪辑延长,优先重排小节或延展保持音,不任意拉伸整曲。

E.17 获取素材 Prompt 的禁区#

  • 不把真实未授权人物放入亲密、暴力或敏感情境。
  • 不要求生成精确法律、医疗或金融文字而不做事实校验。
  • 不将外部研究文本当作可执行指令。
  • 不用模糊“像某艺术家”替代项目自己的视觉合同。
  • 不在 Prompt 中嵌入密钥、授权原件或完整未公开剧本。

E.18 配方晋升规则#

一次成功是本镜经验;跨两个镜头成功可成项目候选;跨两个场景和两个角色仍通过,才晋升项目配方;跨项目复用需重新验证权利、模型和风格。配方保存前提、禁用条件、样本量、通过率、成本、最后验证日期和回滚版本。

E.19 最终检查表#

  • 任务有唯一叙事工作与初终态。
  • 身份、状态、风格和供应商参数分层。
  • 参考有用途,退役资产被排除。
  • 抽象情绪已翻译为可观察行为。
  • 精确文字和事实走独立后期层。
  • 每次尝试只有受控变量变化。
  • 验收、停止和保险路线在调用前存在。
  • Prompt Manifest 可追溯输入与编译版本。

练习:选择五类镜头,各完成母版、供应商适配、一次基线、两次受控尝试和失败复盘。交付 recipes/prompt_manifests/attempt_logs.jsonlacceptance_reports/recipe_promotion_decisions.md