Seedance 2.5 行为规律 v1
数据来源:《1000人后室大逃亡》项目 2026-08-05 ~ 08-08 的实测, 原始记录在
E:\backrooms-1000\production\README.md(第一~第十一条)与production/prompts/。 两条入口都跑过 Seedance 2.5:Flova(自然语言 + 上传参考图)与 Dreamina CLI(multimodal2video)。下文标注了哪些结论是管线特性、哪些是模型特性。⚠️ 本档案记录的是模型行为。怎么写 prompt 的完整规范在项目仓库,不在这里重复。
一、结构性行为(改 prompt 无效,只能绕)
长视频内部按约 6 秒自动分段 ⭐⭐
25 秒长镜实测:切点落在 6.00 / 12.00 / 18.00 秒,帧级精确。 这是模型内部的生成分段,prompt 层完全触及不到—— 写「一镜到底」「不要中途切镜」「保持连贯」三种否定式防御全部无效。
绕法:不要求它不切,而是把切点安排到你指定的位置。 做法是写成 N 段各约 6 秒的节拍,每段结尾让画面被暗部/遮挡物完全占满, 切点就落在观众看不见的地方。实测切点处亮度 0.0/255,肉眼不可辨。
这条是「对模型的固有行为写『不要』无效,要写『在我指定的位置发生』」的原型案例。
内部景别切换:跨度不够大就不切 ⭐⭐
- ✅ 切成功:微距↔中景、特写→反应镜头→中景(换主体:人↔物、主角↔围观者)
- ❌ 切失败:同场景内的中景→特写,连续两次、反复强调都没切
绕法:这类切点单独出插入镜头,不要指望内部硬切。
反复强调「同机位/保持连贯」会压掉你要的切换 ⭐⭐
某版 prompt 强调四遍同机位,结果 8 秒全程一个机位没切。 要切换就把段落写简洁、切点写明确,别同时写连贯性要求。
二、画面内文字:判据是字号,不是字数 ⭐⭐⭐
原来的口径「AI 生成的文字几乎必崩」和后来的「长中文必崩」都被实测推翻。 把六个样本的笔画外接高度量出来之后,规律是干净的(全部按 1280×720 成片测):
| 字高 | 占画幅高 | 判定 |
|---|---|---|
| ≥45px | ≥6.0% | ✅ 大胆原生出,长中文一样一字不差 |
| 约 20px | 约 2.8% | ⚠️ 临界区,先出一条验 |
| ≤20px | ≤2.8% | 🔴 一律后期叠加,写什么都会崩 |
关键实证:
- 同一行 10 字中文、同一块资产图,只把铭牌在画面里放大约 2.5 倍 → 从错 4 字变成一字不差。 而且放大那一版还多了一个推近运镜,按老规则应该更糟,结果反而对了。
- 广角 + 有纵深 + 同屏七处文字 + 含电话号码
138-8888-8888→ 一处没崩。 - 最小的失败样本:英文 6px(0.83%)、中文 16px(2.22%) → 英文丢字母、中文糊成一团。
推论:字数看起来像原因,是因为铭牌宽度固定——字多了每个字就小。 要问的不是「几个字」,而是「这个字在成片里有多少像素高」。
一次性解错,然后稳定保持那个错误 ⭐⭐
错字在相隔 3.3 秒的两帧之间一模一样、没有变形。 说明它不是逐帧抖动,而是一开始就把字形解错、之后忠实复现。 → 抽两帧对照就能判,不用逐帧看。
原生比后期更协调(反直觉,但有实证)⚠️
原生出来的字自带四件事:半透明(背景从字后透出)、和载体同一种辉光、 跟着载体斜面走透视、载体明暗变化时字跟着亮暗。 这四件后期都能做,但每一件都要单独对齐一次。
一个结构性死局要认出来 ⚠️
如果镜头的运镜是「推到某个 logo 占满画面」,那么等字够大的时候铭牌已经被推出画外—— 不存在「又在画内又够大」的窗口。遇到这种镜头不要反复试,直接做成空白板 + 后期叠字。
三、运镜:要劝退的是性质,不是长度或有无
| 安全 | 劝退 |
|---|---|
| 匀速轨道式跟拍 · 匀速弧线环绕 · 匀速缓推 · 匀速垂直升起 · 穿越机匀速穿行 | 甩镜 · 快推 · 手持抖动 · 中途变速 |
长镜运动的安全区实测至少 25 秒。原来「连续长镜运动劝退」那条太粗。
构图不变量锁得住位置,锁不住幅度 ⭐⭐
写「主体在画框哪个位置」能生效;不约束推进的量。 模型把「匀速推到底」当主目标、不变量当软约束,冲突时先满足前者—— 于是一路推到主体填满画框,位置关系全对、景别全丢。
按起手景别完全分成两组(同批 6 条,无例外):
| 起手景别 | 不变量结果 |
|---|---|
| 全景 / 大远景 | ✅ 全部成立 |
| 中近景 / 近景 | ❌ 全破,主体被切出画框 |
写法:
- 不变量除了「主体在哪」,要写「全程还要看得见什么」,列到边缘物件。
- 给幅度显式上限并明说宁可推少:「如果再推这条就要破了,就在破之前停下。」
⚠️ 三条失败同批次发生,不算独立样本;修复句只验证过一次。
空间关系是一张网 ⚠️
改了主体的运动方向,「谁在谁身后」「摄影机在哪一侧」「威胁从哪来」全都要重算。 实测事故:改了奔跑方向却留着「怪物从画面深处涌出」,变成主体朝威胁来的方向跑。
写法:追逐/进出画/正反打的镜头,**先单写一段【空间关系】**把 摄影机/主体/威胁三者钉死,再写动作。
四、参考图与文字的优先级
参考图里有的东西,prompt 与负面词都压不住 ⭐⭐⭐
模型会忠实复现参考图。对策是换图/裁图/不挂图,不是加负面词。 反过来也成立:图干净了,生成就干净。
但冲突属性上,文字赢过参考图 ⭐⭐
一句全画面级禁令(「画面里不要出现任何文字或商标」) 会把资产图上的贴纸/招牌/标识全铲干净,即使挂的是带标识的原图。
实证:某辆标志性摩托的整套贴纸就是它的辨识度,删掉那句禁令 + 换回带贴纸原图, 一次就对,连中文字都一字不差。
落地:不写全画面级禁令。只针对具体那一处写,且用肯定式描述期望状态。 资产图上本来就有的标识,要在镜头内容里正面点名要求出现, 并注明「字母生成得不精确也没关系,有比准更重要」。
小尺度下的面部重建需要专门的面部锚点 ⭐⭐
上一镜的尾帧管不住脸。尾帧是一张脸高约 250px 的大特写, 下一镜里主体在奔跑、脸小又在动 → 一步崩成另一个人(年龄感差 15 岁), 不是渐进漂移。
落地:凡有锚点角色出镜,角色资产图一律挂上,不管上一镜尾帧多清楚; 同时用文字写死年龄段/脸型/脸颊/下颌线/法令纹有无/眉形/发量, 并补一句动态约束「他在奔跑/大喊/侧身躲闪时也必须还是同一张脸」。
五、否定句的用法(分界线清楚)
| 写法 | 判定 |
|---|---|
| ✅ 肯定式定量 + 站位(「画面里只有两名围观的男大学生并排站着」) | 有效 |
| ✅ 收尾否定但不点名新实体(「除这两人外画面里没有别人」) | 有效 |
| ✅ 对照式反例,用来封住已知的漂移方向(「不要做成方下颌的中年男人」) | 有效 |
| ❌ 列举不想要的元素(「没有标题栏、没有侧栏、没有输入框…」13 个否定) | 五版全崩 |
| 🔴 点名高先验实体去否定它(「不要孙悟空」) | 最糟,等于凭空引入 |
「肯定式锁定句」已三次验证有效 ⭐⭐⭐。要点是给出正面的物理解释—— 「刚拆封、还没进过打印机的空白复印纸」比单说「空白的」有效, 模型需要一个理由去渲染空白。
⚠️ 管线特性(不是模型特性)
Dreamina 的 multimodal2video 没有 negative prompt 通道,
flag 里只有一根 --prompt。所以「加负面词排除 X」落地就是把 X 拼进正向 prompt。
Flova 走自然语言,这条不适用;但 Flova 会自动追加负面提示词,
归档要存追加后的完整原文。
六、控人数与群体
- 必须给具体数字和站位(「左边一个右边一个」「只有三个远小剪影」)。
- 写「密集但看不清脸」这类形容词无效——实测背景冒出几十个人做整齐划一的动作。
- 同框人物 ≤3 且优先剪影/背影/远景/局部。
- 大规模人群可行的唯一写法是重运动模糊 + 高速穿行,让五官根本无法解析。
七、其他实测数据
| 项 | 值 |
|---|---|
| Flova 直出 | CFR 24,1280×720 |
| Dreamina 直出 | VFR(标称 60/1,实际平均 24.03–24.15)→ 进时间线前要转 CFR |
| 积分消耗 | 实测约 59 分/秒,比早期估算的 31 分/秒高近一倍 |
| 中文台词 + audio tags | ✅ 零泄漏(3 音色 × 4 组 = 12 次);stability: creative 下 tag 响应最强 |
| 视频模型自带 TTS | ⚠️ 只当占位。读音错了不要在视频模型里反复调——改一段读音要求会引起画面退化(实测背景人群退化成扁平卡通矢量小人)。台词走 Eleven v3 |
验证等级说明
⭐⭐⭐ = 三次以上跨场景成立,可用于指导决策; ⭐⭐ = 二次验证; ⚠️ = 初次发现,只作为值得继续观察的假设,不能当铁律用。
关联文档
- 2026-08-08_后室大逃亡S45-S48_运镜与跨镜一致性返工复盘 —— 本档案第三、四节的主要来源
- 2026-08-05_后室大逃亡配音工序_四音色定版复盘
- Eleven_v3_行为规律_v1
- 可灵Kling3_0_行为规律
- 图生视频_ForwardOnly原则
- Flova_平台档案_编排层不是模型层_v1 —— 编排层的对应档案。本文只写模型行为,平台能力边界与项目记忆机制看那边
- 2026-08-08_后室大逃亡S43长镜头_归因未遂与生死线次序复盘_v1 —— 同项目、同日;6 秒自动分段这条的原始归因过程在那边