| name | storyboard-breaker |
| description | 分镜拆解专业规范 — 将剧本拆分为可承载多个子镜头的分镜段落 |
分镜拆解指南
核心定义:分镜段落
一个分镜 = 一个 分镜段落(segment)= 一个视频生成任务。
- 每个段落时长 8-15 秒,内部承载 2-4 个子镜头
- 子镜头之间可以切镜:换景别、换角度、换拍摄对象,用硬切衔接
- 子镜头之间不跨场景:一个段落只发生在一个场景内(
scene_id 是段落级绑定)
- 每个子镜头 2-6 秒,聚焦一个画面单元(一个动作、一个反应、一个特写)
拆分流程(四步)
- 调用
read_storyboard_context 读取剧本、角色、场景、道具、已有分镜摘要
- 节拍识别:先识别剧本的叙事节拍——剧本中的【开场】【触发】【高潮】【收尾】等标记,或叙事转折点(地点转移、规则揭示、情绪爆发、反转)。节拍边界强制切段,同一节拍内的子镜头优先归入同一段落,不把一条因果链(铺垫-发生-反应)切散到不同段落
- 总量锚定:目标总时长 = 剧本字数 ÷ 500字/分钟;段落数 ≈ 目标总时长 ÷ 12秒,允许 ±20% 浮动。不要明显超出或不足
- 段落内拆子镜头:按动作切换点、视角切换点、对象切换点切分子镜头,为每个段落补全完整字段后调用
save_storyboards 一次性保存
节奏分层时长
按段落功能确定时长,不要一刀切:
| 段落类型 | 时长 | 说明 |
|---|
| 过渡段 | 8-10 秒 | 赶路、空镜、环境建立、转场 |
| 叙事段 | 10-15 秒 | 常规剧情推进、对话 |
| 爆点段 | 12-15 秒 | 特写、规则揭示、情感爆发、反转;子镜头节奏放慢,单个子镜头可停留 4-6 秒 |
台词时长下限(硬规则)
段落时长 ≥ 段内台词与旁白总字数(写在 description 中的部分)÷ 4.5字/秒 + 2秒表演余量
装不下的台词必须拆到下一个段落,不允许把演不完的台词塞进一个段落。
镜头要素
- 镜头标题:3-5字概括段落核心内容(如"噩梦惊醒")
- 时间:具体时分 + 光线描述
- 地点:场景完整描述 + 空间布局 + 环境细节
- 景别:段落内主导景别;多景别段落写组合,如"中景+特写"
- 角度:平视/仰视/俯视/侧面/背面
- 运镜:固定/推镜/拉镜/摇镜/跟镜/移镜(段落内不同子镜头可不同)
- 画面描述
description:按 【镜头1】…【镜头2】… 逐子镜头描述观众实际看到和听到的内容——画面(谁 + 具体动作 + 肢体细节 + 表情)写在前;该子镜头有台词时以「角色名说:「台词」」写在对应 【镜头N】 内,旁白写「旁白:内容」
- 画面结果
result:段落结尾的即时后果 + 视觉细节
- 氛围
atmosphere:光线 + 色调 + 声音 + 整体氛围
- 时长
duration:段落总时长 8-15 秒,且满足台词时长下限
- 场景关联:若能匹配已有场景,必须填写
scene_id
- 角色关联:填写
character_ids,绑定当前段落涉及的 0 到多个角色
- 道具关联:填写
prop_ids,绑定当前段落出现的关键道具(0 到多个)
场景关联规则
- 优先使用
read_storyboard_context 返回的 scenes
location + time 可明确匹配时,必须回填正确 scene_id
- 不要凭空生成不存在的场景 ID
- 如果剧本内容明显落在已有场景中,不要重复创造新场景描述
角色绑定规则
character_ids 必须从 read_storyboard_context 返回的角色列表中选择
- 一个段落可以没有角色,也可以绑定多个角色
- 只要段落里有明确出场、被看见、发生动作或说话的角色,都应绑定进去
- 纯环境段落、空镜、物件特写可以传空数组
道具绑定规则
prop_ids 必须从 read_storyboard_context 返回的道具列表(props)中选择
- 道具被角色使用、交接、特写,或在画面中明显可见且对叙事有意义时,必须绑定到该段落
- 道具特写段落(无角色)也应绑定道具,
character_ids 可为空
- 与剧情无关的背景物品、场景陈设不要绑定;没有道具出现的段落传空数组
- 绑定的道具会作为视频生成的参考图(白底单品图),保证道具外观跨段落一致
质量要求
description 要适合人读,按子镜头详细描述观众实际看到和听到的内容;台词/旁白直接写在对应 【镜头N】 内
image_prompt 要突出单帧构图、角色外观、环境和光线(对应段落第一个子镜头)
bgm_prompt 和 sound_effect 用简洁短语即可,但不能空泛到只有“紧张”“悲伤”
- 如需调整,调用
update_storyboard 修改具体段落