# 镜头设计方法 ## 规则分级 - `structural_invariant`:可以直接检查的结构要求,例如每段原文都有处理结果、引用可以解析;格式错误可以阻断。 - `reviewed_invariant`:必须守住、但要结合证据判断的内容要求,例如镜头没有改写剧本动作。 - `craft_default`:通常有效的起步方法;有明确的戏剧理由时可以调整。 - `taste_option`:创作者或视觉方向已经接受的风格选择,不能仅因不同于示例就判错。 ## 目录 1. [先落实原文,再追求画面](#先落实原文再追求画面) 2. [镜头目的](#镜头目的) 3. [场面调度与地理](#场面调度与地理) 4. [景别与摄影机动机](#景别与摄影机动机),含[运镜逐镜选](#运镜逐镜选-sht-04) 5. [时长与切镜](#时长与切镜) 6. [视觉方向选择](#视觉方向选择-sht-07) 7. [相连边界](#相连边界-con-01) 8. [首尾成对](#首尾成对) 9. [一镜到底还是切开](#一镜到底还是切开) 10. [常见问题](#常见问题) 11. [审查问题](#审查问题) ## 先落实原文,再追求画面 `SHT-01` 要求每个与制作有关的剧本段都有明确处理:由镜头落实、有理由地省略,或因 新的观众体验而有意重复。 先在上下文中把剧本段与镜头对应起来,再设计镜头;这份对应只用于检查责任,不另建产物,也不要求“一段一镜”。 连续表演和空间关系能守住原意时,几段原文可以合在一镜;揭示、反应、证据细节或空间 变化很重要时,一段原文也可以由几镜承担。 原文落实直接写在 `分镜.md`:每个制作相关的动作、对白、声音和画面文字都指向承担它的 `SHOT-...`;镜头条目反向写场景 ID 与必要短引文。来源改变后逐场复核对应镜头,不依赖隐藏引用。 重复拍同一段内容,只有在第二次带来新的观众体验时才成立,例如新增反应、矛盾、 此前保留的证据或对前镜的新理解;不能因为第一次对应关系被忘了就重复。 ### 动作落实表 **`SHT-08 · reviewed_invariant`**: 每个有权威来源的动作只有一个主要落实镜头;其他 镜头若再次涉及该动作,必须增加反应、细节或对原信息的新理解。峰值处的冲击重复是有意的例外, 见下文。 原文落实数量只能证明“某段原文被引用”,不能证明动作没有提前、重复或遗漏。对转手、 开门、受伤、揭面、拿出证物等动作,在设计时核对以下关系;最终决定落实到对应镜头: | 来源动作 | 主要落实镜头 | 动作前事实 | 动作后事实 | 其他镜头的作用 | |---|---|---|---|---| | 右手从衣内取令牌 | SHOT-02 | 令牌在衣内 | 右手持令牌 | SHOT-03 只展示纹样和接收者反应 | - 只有主要落实镜头可以把状态从动作前改成动作后。 - 前一镜的结束状态不得在没有来源动作时提前变成动作后状态。 - 后一镜已经从动作后状态开始时,运动规格不得再完整表演一次该动作。 - 其他镜头要写清自己负责细节、反应还是重新解释,不能成为第二个主要落实镜头。 **冲击重复**:情绪爆发、打脸或重大反转的那一下,可以把同一个关键动作从两三个角度各给一次, 让观众连看几遍。这是有意的选择,不是忘了对应关系,所以要写出来,并守住连续性: - 重复镜在说明里写「冲击重复:SHOT-...」,指向主要落实镜头; - 状态只改变一次:每个重复镜都从同一个动作前状态走到同一个动作后状态,第二遍不能在第一遍的结果上再做一次; - 重复镜之间起止不衔接,是这项选择本身,与声明过的蒙太奇一样按 `CON-05` 处理;最后一个重复镜之后,下一镜从动作后状态开始; - 只用在峰值。一集里处处重复,就没有哪一下是冲击了。 ## 镜头目的 `SHT-02` 要求镜头守住来源原意,并说明观众或人物在本镜结束时发生了什么变化。 只有漂亮画面、没有戏剧职责的镜头,不能通过内容审查。 按以下顺序设计: 1. 找出来源中的关键动作:行动、台词、发现、拒绝、转手或揭示。 2. 说明观众或人物因此发生什么变化。 3. 决定本镜主要从谁的体验组织画面。 4. 确定开始和结束时必须看见什么。 5. 最后才选择景别、摄影机行为和切镜点。 镜头可以负责建立空间、让观众站到某个人物一边、展示证据、暂缓信息、转移权力、 表现反应,或让后果无法回避。“中景展示人物说话”不算足够的镜头目的。 ### 承受者的反应 **`SHT-27 · reviewed_invariant`**:打击、否定或翻盘需要观众理解其后果时, 分镜应安排可读的承受者反应或其他后果载体。 可以用独立反应镜、双人镜内的调度、清楚的群像反应、声音或物件状态承载。 现有画面已经清楚就不必补镜;需要保留反应或承受者不在场时,注明叙事安排。 审查按后果能否被理解判断,不按人数、景别或反应镜数量判断。 ### 观众可见性 (`SHT-12`) 构图同时决定观众此刻能知道什么。每个事实单独写一条观众可见性判断:绑定准确场景 ID,说明 现在展示还是暂时扣住,写明可见或可听的载体,并分别写出 揭示条件、保护方法和理由。同一镜中的不同事实可以在不同时间放出。 背影、只露腿部的入场、门缝、前景遮挡、延迟对焦,以及**逆光成剪影或压暗到只剩轮廓**, 都可以用于保护剧本保留的揭示。用光保护时不改光源身份与方向,只声明人物落在明区还是 暗区,并把该选择写进本镜排除项防止后续漂移——否则人物正面入场却要求不给身份时, 本环节没有合法写法,执行端会直接给一张清晰正脸。 如果它们提前暴露身份或证据,就是失败。反过来,本镜若负责展示证据或听者的关键反应, 就不能为了画面好看而遮住其载体。神秘感不是默认加分项;审查者同时核对剧本允许展示 什么,以及本镜必须交代什么。 ## 场面调度与地理 把场景写成可以行动的空间: - 入口、出口和固定锚点。 - 前景、中景、后景区域。 - 谁能看见或接近什么。 - 人物面向与视线关系。 - 轴线工作侧和屏幕运动方向。 - 双手、道具归属和转手路径。 场面调度表现人物策略。靠近可以施压或寻求结盟;转身可以拒绝;占住出口可以控制; 碰触证据可以暴露知情。不要只为增加运动而让人物无理由走动。 跨轴本身不是错误;没有动机又让空间难以理解才是问题。跨轴时可以使用中性过渡镜头、 人物在同一镜内穿轴、有意制造主观错乱,或重新建立空间。 画面文字必须服从 `视觉设定.md` 中已经写明的文字政策。镜头和关键帧直接引用对应标题或 `IMG-...`,可以决定文字是否可见、大小、角度和对焦,但不能静默编造文案,也不能改写 “逐字可读”“只保留图形”或“无可读文字”等当前决定。政策仍未决定时要明确标为未决,不能 假装已经可以交付。 ## 景别与摄影机动机 `SHT-04` 要求景别或摄影机行为因注意、压力、观众立场、揭示或节奏变化而改变, 不能为了装饰每一拍而变化。 - **远景**:交代地理、人物与环境的力量对比,或让人物被空间吞掉;信息靠轮廓、方位和 距离读出,不要指望这一档承担表情。 - **全景**:建立空间、孤立感、群体权力或同时发生的后果。 - **中景**:表现互动、手势、双人策略和清楚的调度。 - **中近景**:对话距离的双人,或仍然保留手部的单人:比中景少一层环境,比近景多留出 调度余地;一场停在工作景别时的对切多数落在这一档。 - **近景**:表现决定、证据、被藏住的反应或无法撤回的认识。 - **特写**:把一张脸、一只手或一处伤单独提出来,让某个反应、破绽或细微动作成为本镜 唯一事实;代价是暂时切掉空间参照,用它就要接受观众此刻读不到周围发生了什么。 - **大特写**:只留眼睛、嘴、指节或物件上的一处细节;用于观众必须看清、而近景会淹没的 单一证据或生理反应。它切掉的信息最多,因此要有明确的“非看不可”理由。 - **细节镜头**:展示已经建立意义的关键物件或动作。 近景和特写是中文分镜里最常用的两档,不是留给高潮的稀缺资源;同样,大特写也不是被 禁止的景别。要防的是**把景别当情绪音量旋钮**:情绪词一升级就换更紧的景别,本镜到底 要观众读到什么反而没人回答。判断标准始终是必须被读到的信息存在于哪个尺度——证据在 指节上就给大特写,后果在两人距离上就不该切近。 项目已接受节奏档案时,近景类镜头占全集镜数的比例不低于 `close_shot_share_min`,哪些景别算近景类以 `$short-drama-develop` 对该字段的定义为准。这是全集的下限,不是每场的配额:交代空间的场可以宽,对峙和揭示的场会更紧。 占比不够时,先看对话段是不是一直停在中景,听者反应和要落地的台词有没有给到近处。 ### 竖屏把可用的景别收窄了 上面那张表是横平竖直的电影景别谱系。**竖屏不是把它裁窄,是让其中两档变得难用**。 远景和全景常用**横向铺开的信息**交代关系:谁站在谁旁边、队伍有多长、这个人 离出口有多远。在相同画面高度下,9:16 的宽度约为 16:9 的三分之一。同样的信息横向排开,容易挤在一起, 或因缩小而难以读清。所以竖屏短剧的实际用法以中景、近景、特写为主,远景与全景出现得少。 竖屏可优先用**纵深**交代空间——前景、中景、 后景分层,用门框、桌沿、台阶、人的前后遮挡把关系立起来(见 [竖屏多人调度](blocking-playbooks.md#1-竖屏多人调度))。做到了这一点,竖屏一样能给全景; 做不到就不要用这一档去承担交代空间的职责,改用一个更近的镜头单独给一次。 **竖屏的横向视野窄,观众的视线本来就被逼到画面中央**,这既是小景别好用的原因, 也是大景别失效的原因——同一件事的两面。 只有注意或关系发生变化时才改变景别和角度。场面声音变大,不等于镜头必须从全景一路 推到大特写。反过来,一旦决定切镜,新镜就要在景别、角度或人物关系里至少改变一项; 相邻两镜完全同景别、同角度、同关系时,这次切镜没有职责,应当改变收放或并回一镜。 ### 运镜逐镜选 (`SHT-04`) 每镜的「运镜」一行按本镜目的选。先问这一镜里观众的注意要不要移动、往哪里移,从上往下对照: | 本镜在做什么 | 运镜 | |---|---| | 人物移动本身是这一镜的事:冲、追、逼近、爬上高处 | 跟拍或横移,让他在画面里的位置保持住 | | 新信息从画外或画面一侧进来 | 摇、俯仰或后拉,停在新信息上 | | 一句台词或一个认识正压到某人身上,对白镜里的说话者与听者都算 | 缓推或前移,停在承受者的脸或手上;拉开则是关系变远 | | 两人的关系或处境在原地被重新评估:绕过去才看得到的另一面、被围住 | 环绕 | | 高度本身有意义:升起交出全局或结局,落下把观众接进人物所在的高度 | 升降;不为“开场要大气”而升降 | | 情绪爆发、重大反转 | 短促推近;定格、闪白由剪辑实现,本镜写明落在哪一拍 | | 观察、等待、紧张、仪式、受困;插入镜;对白镜里这句台词不带来压力或处境的变化 | 固定 | 手持只用于创作者已经接受的身体不稳或现场感。 固定是这张表的最后一行,不是起点:前面几行都不成立时才固定。写法是 「运镜:<行为>,<从什么时候开始、停在哪里>;<为什么>」,固定写「运镜:固定;<为什么>」。 固定也要写出来:这一行空着,动不动就改由视频提示词阶段替你选。只写「运镜:固定」 说不出是上表哪一行,等于没有选。例如「运镜:缓推,他说出『这单我接了』时开始,停在眼睛;这是他第一次把赌注 压在自己身上」「运镜:固定;插入镜只要看清数字」「运镜:固定;这句话没有落到谁身上」。 强调手段包括短促推近、定格、闪白,只留给情绪爆发和重大反转,用在普通台词上,真正的峰值就 显不出差别。跟随动作的跟拍、揭示信息的摇、压力落下时的缓推不是强调手段,任何一场都按上表使用。 写完回读全集的「运镜」:有奔跑、有揭示、有峰值的一集,不会每镜都是固定。 没有明确切换时,不要在同一时间段同时要求固定和移动。 **`craft_default · SHT-04`**:每镜按目的选运镜,写出行为、起止与理由;动作要跟、信息要进画、 压力要落、峰值要强调时用有动机的运动,都不成立时固定,固定也写出行为与理由。短促推近、定格、闪白只留给峰值。 ## 时长与切镜 ### 短镜头的动作量 (`SHT-03`) 作为 `craft_default`,可以先从一个主要动作开始,再保留让观众读懂后果所需的反应。 只有连续表演、空间、时长和镜头目的都仍然清楚时才合并更多内容。这是起步方法, 不是固定动作数量检查。 时长要给动作、表演、对白和反应留出可读空间。明确的对白长度和计时动作可以作为证据; 一般动作量是否过多,应由审查者结合本镜判断,不能用通用的每秒字数阻断。 **塞多了不会被删,会被压扁**。视频模型拿到一串动作时,通常不是丢掉后面几件,而是把每件都压成 一闪而过:一组 Seedance 2.0 小样本里,5 秒镜头写 6 个连续动作,3 次都“做完”了,但从第三件起 每件只占约半秒,起身是跳过去的,走开只剩一帧,前后动作叠在一起;写 4 个时多数停在第三件; 写 2 个时动作从容但起得晚。这组数字只来自 5 秒镜头,不是通用的动作数上限;要做的是在分镜阶段就数一下 这一镜要观众**看清**的事,按镜长判断每件有没有足够的时间,而不是等视频提示词阶段才发现。下面这些是超载的信号: - 一个人要在几秒里依次完成好几件需要看清的事(拿起、放下、再拿起另一件、起身……),平均到每件不足一秒多; - 几个角色各有独立的大动作,而这一镜的目的只需要一次揭示; - 长对白、情绪转折、精细手部动作和复杂运镜挤在同一镜; - 终点没有留出落住的时间,只能写“最后到达”。 修法依次是:删掉没有故事功能的动作;把能连贯的合成一个;选一个注意中心,其余人只留必要反应; 仍然放不下,就拆镜或延长,而不是在提示词里加“快速”“依次”。 在变化处切镜:新信息、新目光、新决定、新空间关系、新威胁、新证据或节奏变化。 不要只为换角度而重复同一个动作。给反应留下足够时间,让观众读懂后果。 ### 对白估时 **`craft_default`**:先排完整声音事件,再确定镜长。不要先选一个短镜长,再要求人物加快语速把台词塞进去; 一句台词比目标镜长更长时,把它拆到说话者与听者的几个镜头上,声音连续、画面切换,语速不变。 - 有同一句、同语言、同表演方式的录音或配音时,使用实际发声区间;文件首尾静默与句内停顿分开核对, 不把整个文件长度当作纯说话时间。没有音频时按原文、人物语速、情绪和换气估一个区间,明确标为 「文本估计」,不要声称已实测。项目已校准的语速可以辅助估算;数字、缩写按实际读法考虑,不能只数可见字符。 - 顺序说话的多句或多人对白累加,句间停顿与听者反应按实际顺序加入。边说边抬眼等确能并行的动作 与对白共用时间;必须等话说完才发生的动作另占时间。不要重复计算已包含在录音或估计里的停顿。 - 在本镜「声音」中简写依据,例如「对白按克制语气文本估计 8–10 秒(含句内停顿);开口前 0.5 秒, 说完后的反应 1 秒;抬眼与对白并行」。此例按估计上沿需要 11.5 秒;若目标是 H3,向上取到 12 秒, 余下 0.5 秒安排在已有终点停留。数字只是此例的预算,不是统一余量或官方语速。 - 取容得下时间线的合法时长;超过模型上限时按语义和可见状态闭合点拆镜,并检查整集总时长。 已接受镜长或集长固定且放不下时,说明冲突并提出延长、拆镜或剧本修订;不擅自删词或把正常对白改成快读。 文本估计是规划依据,实际生成后还需听完整性、语速和尾音。没有录音、配音或生成结果时,不把估计写成 秒级准确的声音控制承诺;纯动作镜无需补对白预算。 ### 镜长从哪来 (`SHT-28`) 镜长由声音事件和已接受的目标平均镜长共同决定,不按剧本字数或动作段数折算。字数折算得到的是 朗读长度的平均分配,不是剪辑节奏。 1. **排时间线**:按上一节把本场每句台词、`[VO]` 和关键声音事件排成一条时间线,再加上必须看清的 无声动作和反应。这条时间线的长度就是本场时长。 2. **算镜数**:项目已接受节奏档案时,本场镜数约等于本场时长除以 `target_avg_shot_seconds`,四舍五入, 至少一镜。没有已接受档案时跳过这一步。 3. **放切点**:按下一节的对白覆盖默认,把切点放在换人说话、听者反应、插入镜和动作变化处。每镜的 时长就是它覆盖的那一段时间线。 4. **回算**:本场平均镜长等于本场时长除以实际镜数。明显长于目标时,先补听者反应和插入镜,再把 长台词拆到说话者和听者的镜头上;明显短于目标时,合并没有带来新信息的切点。 目标平均镜长是整场的目标,不是每镜的配额:一个插入镜可以不到一秒,一句要落地的台词可以占四五秒。 没有已接受档案时,末尾报告写出本集实际平均镜长,由创作者决定是否接受一份节奏档案。 **`craft_default · SHT-28`**:镜长由声音事件和已接受的 `target_avg_shot_seconds` 共同推出,目标是整场 平均值;不从剧本字数折算。 ### 对白场怎么切 (`SHT-29`) - **一句台词一个镜头**:说话者的镜头承载这一句;一句话里有转折时,可以在转折处切。 - **默认给听者**:重要的一句落下时,切到听的人,让观众看见它打中了谁。 - **来回对话用正反打**:两人交锋保持摄影机在同一轴线工作侧,对切相向的说话者与听者,过肩或单人都可以。 - **景别顺序**:先给一个带着人物和动作的交代镜,对话落到中景或中近景,只在一句话需要落地时切到特写。 - **删空镜**:既没有台词也没有动作的镜头删掉。 - **插入镜是便宜的节奏工具**:手机屏幕、手、戒指、证件这类插入镜不需要表演,可以插在长台词或等待中间, 也可以把一句话拆开。 这是起步默认。一场戏有意用不切的双人镜施压,或让群像同时反应更清楚时,说明理由即可改,见 [调度手册](blocking-playbooks.md)。 **`craft_default · SHT-29`**:对白场默认一句一镜,给听者反应,交锋用正反打,先交代再落到中景,特写 留给要落地的台词;删掉既无台词也无动作的空镜;插入镜用来调节节奏。 ## 视觉方向选择 (`SHT-07`) 焦段语言、节奏、固定机位、手持或形式化调度属于 `taste_option`,读取创作者已接受的 视觉方向。审查它是否服务本镜,不强制所有项目使用同一套风格。 ## 相连边界 (`CON-01`) 本镜已接受的结束边界必须与下一镜已接受的开始边界一致;若不一致,负责产物必须声明 修订或过渡。不得用摄影机描述掩盖边界冲突。 ## 常见问题 - 镜头表只是改写剧本句子,没有说明观众怎样观看或获得什么变化。 - 用匿名“人物”代替准确的已接受资产。 - 一镜跨越地点或时间,却没有蒙太奇或省略依据。 - 保留了对白,却删掉承担后果的反应。 - 人物或道具在切镜后无原因换位。 - 每句情绪台词都变成大特写(问题在“情绪升级=景别收紧”的条件反射,不在大特写本身)。 - 相邻两镜同景别、同角度、同关系,切了等于没切。 - 摄影机指令冲突,或运动没有注意变化的理由。 - 套话式布光替代真实空间锚点。 - 把外部批量制作单位误当成剪辑镜头本身。 ## 审查问题 - 本镜落实、省略或重复了哪些剧本段? - 本镜结束时改变了什么? - 为什么选择这个景别和摄影机行为? - 每个人物能否在当前空间中合理站立、看见和移动? - 是否绑定了准确的造型、观察视角、道具状态、双手状态和文字政策? - 结束边界是否为下一镜提供清楚的开始状态? - 删除或合并本镜,会不会丢失故事意义? ## 首尾成对 终点的可见状态对本镜重要,且目标模型支持尾帧时,可以补写 `### 收尾关键帧提示词`。它只描述终点,不混入起点或中间动作。 若起终状态相同,或变化发生在画外,通常无需另做尾帧。 尾帧管的是最后一格的构图,不管中间的动作做没做完。Seedance 2.5 的一个镜头对照中,绑定尾帧改善了 末帧落位;Seedance 2.0 的一组递文件夹小样本里,首尾帧模式与“参考模式里写明图片作首尾帧”的末帧都 贴近尾帧图(相似度 0.92–0.99),但 6 次里有 4 次文件夹没打开到位;只给首帧、终点写在正文里的 3 次 反而都做完,动作也最顺。所以镜内的状态变化默认只出首帧,终点写进分镜;尾帧留给构图必须准确落位的 地方,最常见的是下面的转场。生成后仍检查中间动作、节奏和终点,不能只比较最后一帧。 **跨镜转场**:相邻两镜要无缝接上时,先看生成路线。同一连续时空、目标档案支持续接时,默认从上一段 的真实结果续接,下一镜的开场就是上一镜真实的尾帧,不需要另做图。创作者明确选择逐镜独立生成时, 两镜在剪接点必须对上的那个状态用同一张已接受的图承载:先出下一镜的首帧并接受,再把它作为上一镜的 尾帧;两镜分镜里的终点与起点写成同一状态。这只适用于剪接点两边构图相同的接法(同机位连续、同一 构图里接动作);换景别或换角度的动作剪接只要求动作状态连续,两镜各用自己的机位,不共用一张图。 两镜之间本来就有时间或空间跳变时,硬切即可。 当前生产工具从 `分镜.md` 的 `SHOT-...` 只提取「冻结关键帧提示词」,即首帧。 要在套件内生产尾帧,交图片提示词阶段建立单独的 `IMG-...` 条目,注明来自本 SHOT 的 终点、保留已确认的视觉依据,再以该条目作为 image job 的来源。不得用首帧选择器提交尾帧正文。 实际图片生成后按目标方言绑定 `用途:结束帧`。 ## 一镜到底还是切开 先看这场戏需要什么,再考虑生成与修订成本。 - 连续等待、沉默、空间调度或完整表演,可考虑一镜到底。 - 需要选择不同表演、突出反应或精确安排切点,可考虑分开生成再剪。 - 长段生成一处失败可能需要重出更多素材;分开生成则需要额外处理跨镜一致性。 一次 Seedance 2.5 对白场次实测出现过长镜头发声时间过早的问题。 有严格落点时应检查目标模型的时序能力并试听,不能保证分成镜头就能锁定每句发声时间。 长镜头也可以在剪辑中截取,是否保留完整时长由叙事决定。 多镜容器是在一次生成里安排多个切口;一镜到底则不切镜。 容器可减少提交次数,但不自动保证跨镜一致性,也仍可在生成后剪辑。目标方言支持逐切挂关键帧时, 每个切口都要有自己的已接受关键帧,具体写法见 `$short-drama-video-prompts` 的对应方言。 各镜合并时重新整理参考素材与编号,并核对结果中的实际切点。