--- name: 剧本→分镜自动化已完成 description: run_storyboard.py已通用化,pipeline.py统一入口,整条链路就绪 type: project --- # 剧本→分镜自动化 — 已完成 **工具状态:** - `tools/run_storyboard.py` ✅ 通用化(支持任意剧本路径、集号、Pro/Lite模型切换) - `tools/storyboard_to_workflow.py` ✅ 分镜JSON→ComfyUI批量出图桥接(自动生成workflow+shell脚本) - `tools/route_shots.py` ✅ BC-006逐镜路由分配(用豆包AI自动分配STILL_HOLD/AI_I2V等) - `pipeline.py` ✅ 统一生产入口(`python pipeline.py go <剧本> -e 1` 全自动) **成本:** 豆包API拆一集剧本出分镜 ≈ ¥0.01(之前已实测验证) **之前已跑通过:**《深海迷航》EP01,Pro版26镜、Lite版24镜,效果良好 **Why:** 爸爸要求补短板+全面优化,让管线从剧本到成片全自动 **How to apply:** `python pipeline.py go <剧本> -e <集号>` 一条命令跑完整链路 ## 分镜故事板提示词模板(爸爸共享社群资料吸收,2026-07-31) > 让大模型把分镜剧本转成"带标注的素描线稿故事板"的标准指令,直接可复用: 请你提取以下分镜剧本中的信息,并根据剧本的信息,给我生成一张素描线稿的分镜故事板,每个分镜头的比例是9:16,并在故事板中通过箭头和文字来标注以下关键内容: 1.镜头运动(红色箭头标注) 2.景别变化(橙色箭头标注) 3.人物动作(黄色箭头标注) 4.人物站位(绿色箭头标注) 5.环境元素动态(蓝色箭头标注,元素内容例如:风向哪吹、雪往哪飘等) 按照剧本剧情的分镜,给每个分镜打好编号。 **用法**:把"以下是分镜剧本:XXX"换成实际剧本内容喂给大模型(豆包/千问/Z-Image 编码器均可)。 **对接管线**:可接 pipeline.py 的 storyboard 环节,生成标注故事板 → 分镜图 → LTX/Wan 出片。 ## 分镜故事板 5 色标注法(实战范例,2026-07-31 爸爸共享) > 来源:ce3c9bfe-0e8e-4bcb-91f3-3897581209e1.png(社群里爸爸保存的分镜图范例) 5 色标注法是**让分镜线稿信息密度爆炸**的关键: | 颜色 | 含义 | 典型符号 | |---|---|---| | 🔴 红 | 镜头运动 | 箭头(推/拉/摇/移) | | 🟠 橙 | 景别变化 | 中景/近景/特写/Extreme Close-Up | | 🟡 黄 | 人物动作 | 抬手/手指轻压 | | 🟢 绿 | 人物站位 | 男左女右、前后、居中 | | 🔵 蓝 | 环境动态 | 风吹方向、雪飘方向、花瓣飘落 | **实战范例(古风红线主题 6 镜头)**: - 镜头 025:中近景(MC),女右手指轻触腕部红印,男手轻抬;缓推镜头;花瓣飘落 - 镜头 026:近景(CU),男主扶腰;轻推聚焦手部;红丝缠绕 - 镜头 027:极近景双人对视;缓移聚焦眼神;花瓣飘落 - 镜头 028:面部近景(FCU),女主轻推男主胸口;焦点从脸颊切到眼神 - 镜头 029:近景(CU),男主抬手轻托花瓣;红丝拉近;远处透光 - 镜头 030:中近景收尾(MC Ending),男主跟女主并肩缓推;花瓣落下;红丝发力 **用法**:写"分镜故事板提示词"时直接说"用红橙黄绿蓝 5 色标注",豆包/千问都能稳定输出。 参考完整文件:`/home/ls/下载/ce3c9bfe-0e8e-4bcb-91f3-3897581209e1.png` 2026-07-31 晚 一键短剧 Agent 第一版完成(agent_short_drama.py,183行): - 位置:~/cang-ying/video-ai-system/agent_short_drama.py - 阶段:①分镜(豆包¥0.01/集,走申请) ②路由(豆包) ③逐镜出图(本地Z-Image零成本) ④拼接(待接LTX I2V视频) - 特性:--until/--from 断点续跑、--max-shots 限镜测试、失败即报错定位、自动提交ComfyUI并等待 - 已验证:--from render 造最小分镜出1镜 ✅(自动提交+等待+清单) - 待做:video 阶段(LTX I2V 逐镜成片)、compose 阶段、面板"一键短剧"按钮 - 出图默认走 Z-Image(1024x1024 8步 res_multistep),未来接 IP-Adapter/StoryDiffusion 做角色一致性 2026-07-31 晚 一键短剧 Agent 全链路验证通过(282行): - render→video→compose 三段全通(本地零成本,测试1镜:出图→LTX 49帧视频→成片) - 新增:stage_video(LTX I2V 逐镜成片,默认49帧768x512,自动找起始图→提交→收片)、stage_compose - 断点:--until video/compose、--from video/compose;--frames 控制帧数 - ⚠️ 坑:video_composer 方案B 的 concat 滤镜假定每段有音频流,LTX 视频无声会挂→Agent 单段直接拷贝绕过;多段无声走方案A concat copy 正常 - 待做:面板"一键短剧"按钮、真实剧本试跑(豆包分镜费申请)、B Skill 系统 - 试跑示例:python agent_short_drama.py <剧本> -e 1 --until compose 2026-07-31 晚 面板"一键短剧"按钮完成(eed_web.py 补丁,备份 .bak5): - 前端 #btnDrama 按钮 + dramaModal(贴剧本/分镜JSON、类型选择、豆包授权勾选、帧数、进度pre、成片video) - 后端 /api/agent 端点(SSE 流式 agent_log 进度 → agent_done 返回成片 /media/outputs/agent_EP.mp4) - 已验证:/api/agent 贴分镜JSON → 自动出图→LTX 25帧视频→成片 ✅(curl -N SSE) - ⚠️ 踩坑×2:① eed_web.py 缺 import urllib.request/sys(NameError 被 except 吞成 503/异常)② 诊断方法=except 加 print 日志定位 - 剧本类型需勾选豆包授权(EED-PROTO-005)才能跑分镜段 - 待重启面板生效:bash ~/cang-ying/scripts/restart-eed.sh