| name | huashu-seedance |
|---|---|
| description | Seedance 2.5 视频生成全流程。先把需求澄清成参数(时长/画幅/机位类型/跟随方式/要不要切镜),再用 scene.json 引擎生成白模参考视频(渲染前有几何体检),也能从用户给的照片反解出白模,最后按官方规范生成与白模严格对齐的提示词。 |
Seedance 工作台
把「想拍什么」变成一条 Seedance 2.5 能准确执行的指令。
第一步永远是澄清,不是开渲
用户来的时候通常只有一句话。先读 references/intake.md,按那里的规矩办:
- 只有三件事必须问他:多长、发在哪(画幅)、一镜到底还是切镜头
- 其余的(机位类型、跟随方式、焦段、景别、风格锚点)先从他的话里推断,把推断结果摊成一张表让他否决
- 摊完假设,先给他看 3-5 行的镜头表,让他在文字上改。镜头表改一行一秒,白模建完再改是几分钟
跳过这一步的代价是实测过的:2026-08-15 那次三条白模全部返工(一条重排全部人物轨迹、一条做时间重映射、一条只能本地重剪),根因就是照着自己的理解直接建了白模。
四条产线
| 产线 | 产出 | 什么时候用 |
|---|---|---|
| A · 提示词 | 符合官方规范的 T2V / R2V 提示词 | 任何时候。这是主线 |
| B · 白模 | 用 scene.json 引擎渲出的白模视频 | 要精确控制运镜、空间关系、时间节奏、镜头切换时 |
| C · 参考图 | Seedream 生成的影视级参考图 | 要锁材质、光线、造型时 |
| D · 照片反解 | 从用户的照片反解出白模 | 用户给了照片、要让这个场景动起来时 |
典型全链路:澄清 → 镜头表 → B 做白模锁运镜 → C 做参考图锁质感 → A 把两者绑成一条 prompt。 用户给了照片就把 B+C 换成 D:那张照片同时当空间来源和材质参考,两者天然一致。
主线工作流
E="$SKILL_DIR/engine" # SKILL_DIR = 本 skill 所在目录
# ① 写 scene.json(规范见 references/scene-spec.md,样板在 templates/scenes/)
# ② 渲染前体检——必须 0 个 🔴 才往下走
node $E/probe.mjs scene.json
# ③ 生成工程并渲染
node $E/build.mjs scene.json
npx hyperframes@0.7.107 lint
npx hyperframes@0.7.107 render --quality draft --output whitemodel.mp4
# ④ 抽帧自检——这一步没有替代品(体检查得了几何,查不了好不好看)
node $E/frames.mjs whitemodel.mp4 scene.json # 自动按镜头切点+段内均分挑
node $E/frames.mjs whitemodel.mp4 scene.json 0,7.5,15 # 或指定时刻
# ⑤ 从白模的实际几何生成 prompt(同时产出参考图提示词,产线 C 直接可用)
node $E/make_prompt.mjs scene.json > prompt.md
单帧预览(对构图时用,一轮约 30 秒,可一次给多个时刻):
node $E/preview.mjs scene.json 0,7.5,15
每帧会同时打印该时刻的机位事实(位置/焦距/距离/占画高)——图和数字对不上就是引擎出了问题,别只看图。
铁律
1. 口径冲突时以 Seedance 2.5 / 2.0 官方为准。
Veo / Sora / Kling 的官方指南可以参考,但与 Seedance 冲突时不采纳(三处已知冲突见 references/model-differences.md)。
2. 每个参考素材必须声明「继承什么 / 不继承什么」。 漏掉「不继承」,模型会把参考里的一切都端过来。这是所有规律里最重要的一条。
3. 用技术术语,不用形容词。 「电影感」只能被理解成「好看」。要写《敦刻尔克》、IMAX 65mm、Kodak Vision3、体积光柱、侧逆光。 实证:同一场景,形容词版出的是图库壁纸,技术术语版直接变成电影画面。
4. 负面约束要具体到「排除哪个错误品类」。 不写「不要低质量」,写「避免白模塑料感」(材质错)、「不做教学拆解」(叙事错)、「无箭头标签」(图形错)。
5. 别把宝押在复杂物理上。 四家官方口径一致:复杂运动的物理合理性(球的弹跳、高空抛物)和多主体互动稳定性现在都做不好。Seedance 2.5 官方博客结尾自己承认了。Kling 官方另外点明模型对数字不敏感,「沙滩上10只小狗」这种数量一致性做不到。
6. prompt 里的每个数字都必须是从白模量出来的。
不是从设计稿抄的,也不是想出来的。make_prompt.mjs 负责量。改了白模就重跑它,别手改数字。
2026-08-14 有两条 prompt 照设计稿写,一条承诺「环绕收到 2 米」(白模实际 3.4m),一条承诺「降回 12 米」(真降下去会把队形拍残)。
7. 机械验收通过不等于画面正确。 lint 全绿、时长全对、体检零红,仍然可能五个运镜坏五个。渲完必须抽帧看,这一步没有替代品。 反过来也成立:抽帧看过也不等于全片对——抽的是你挑的那几个时刻,坏的往往在你没挑的那一段。 所以顺序是 probe 找出可疑区间 → 抽那几帧去看,而不是均匀抽几张就宣布通过。
8. 两个人以上,站位比动作重要。
双人戏最先坏的不是打斗好不好看,而是两个人在画面上叠成了一个。判据不是世界坐标里离得远不远——
相机偏离两人中线时,纵向拉得越开、深度差越大,「近的人横向偏移被放大」会正好把左右错位抵消掉,
世界坐标分得清清楚楚,画面上却完全重合。probe.mjs 会逐帧算这件事并报红。
一镜到底尤其致命:没有硬切可以躲,坏了就是整条坏。
产线 A · 提示词
读 references/prompt-spec.md:官方四段式范式(时长画幅 → 参考绑定 → 镜头序列 → 全局约束)、@图片N / @视频N / @白模N 引用语法、时间戳写法、三个可套用模板、官方 prompt 全文样本(含 18 图 + 3 音频的商业案例)。
走了产线 B 的话,prompt 草稿由 make_prompt.mjs 直接生成,你只需要填叙事内容。
产线 B · 白模
读 references/whitemodel.md(流程与自检)、references/scene-spec.md(字段规范)、references/camera-rig.md(十种机位类型、景别距离表、多机位切换)。
核心事实:白模可以极其简陋。它只提供空间关系、运镜路径、时间节奏,材质细节全部交给参考图。所以时间要花在运镜和节奏上,不是建模上。
产线 C · 参考图
读 references/reference-image.md。六要素配方(缺一件就掉档):真实片名锚点、器材规格、大气介质、尺度参照物、戏剧性布光、实拍瑕疵。
用哪个文生图后端不重要,价值全在 prompt 本身。两个尺寸要点:16:9 出 2560×1440,长边不要低于这个档位,参考图分辨率不够会把成片质感一起拉下来。
产线 D · 照片反解
读 references/photo-to-whitemodel.md。五步:叠网格读数 → 读灭点/相机高度/尺子/焦段 → 搭 scene.json → 渲首帧和照片并排对(两三轮收敛)→ 加运动和运镜。
python3 $E/photo_grid.py 照片.jpg 照片-grid.jpg
⚠️ 位置一律叠网格读数,不要肉眼估。实测同一张走廊照片,肉眼估灭点 0.40、网格读出 0.51,差 0.11 就是差 5° 俯仰。自动灭点检测也不可信,地毯花纹会把它整个带偏。
几个绕不开的实证边界
| 事实 | 出处 |
|---|---|
| 单段上限 30 秒,输出 720P | 2026-08-06 实测 |
| 15 秒可用(手动模式数字框直接输 15) | 2026-08-16 实测 |
| 成片 24fps、白模 30fps,跨帧率切点误差 < 1 帧 | 2026-08-16 逐帧核对 |
| 单次参考上限 30 图 + 10 视频 + 10 音频 | 官方 |
| 主体占画高 < 10% 且位移 < 0.5 身高 → AI 会把它丢掉 | 2026-08-16 实测(成片最后 4 秒只剩空祭坛) |
| 白模能钉死位置、速度、时机、空间关系,钉不死违反常识的姿态 | 倒着走的白模,成片里被 AI 悄悄纠正成正着走 |
| 白模主体的颜色会渗进成片 | 蓝色人群白模 → 成片出现蓝面罩人群 |
参考资料
| 文件 | 内容 |
|---|---|
references/intake.md | 需求澄清:问什么、推断什么、怎么摊假设 |
references/scene-spec.md | scene.json 完整字段规范 |
references/camera-rig.md | 十种机位类型、景别距离表、多机位切换 |
references/whitemodel.md | 白模流程、自检、首帧 bug、手写逃生舱 |
references/photo-to-whitemodel.md | 照片反解产线 |
references/prompt-spec.md | 提示词规范 + 官方样本 + 三个模板 |
references/reference-image.md | 参考图六要素配方 + 避坑 |
references/model-differences.md | 四家官方公式对比与三处冲突(仅供参考,不采纳) |
templates/scenes/ | 三个可直接改的 scene.json 样板 |
templates/whitemodel-base.html | 手写路线的起手模板 |
docs/index.html | 给人看的说明页 |
方法论出处:字节 Seed 的 Seedance 2.5 官方发布博客与官方演示物料(配着成片的 prompt 原文),以及 Veo / Sora / Kling 三家官方指南。信源清单见 references/model-differences.md。
