生成报告.md

仙宫玉廊 · 汉服女子背影行走(3 段 × 11s)—— 生成与实测报告

任务:2026-09-16 23:20 起 → 2026-09-17 20:46 完成(中间因两次整机硬挂中断) 机器:GPU 机 192.168.31.31(ComfyUI 0.35.0 / 8189,RTX 5060 Ti 16GB,32GB RAM) 素材:图片-1 (2).png(仙宫玉廊背景)+ 任务01-人物三视图.jpg(汉服女子三视图) 下载页:http://192.168.31.76:8899/10-视频生成流水线/20260916_2340_仙宫玉廊_汉服女子背影行走/


一、需求 → 落地对照

#用户要求落地方式
1第一张图作背景、第二张图作人物<Picture 1> = 玉廊背景(首帧/场景锚),<Picture 2> = 人物三视图(身份锚,提示词声明「三视图是同一个人的三个角度,不是三个人」)
2按 MiniMax H3 模板改写提示词六段式 Ref2VA(subject_definitions / summary / retention_analysis / detailed_description / overall_soundscape / non_diegetic_music);模板里的 @33598841-… 资产引用改写为 <Picture 1>
3三段视频,每段 11 秒3 段 × 260 帧 = 10.833s(H3 帧数只能落在 17k+5 网格:264 帧会被向上取到 277=11.54s,260 帧才最接近 11s),合计 780 帧 = 32.5s
4场景保持稳定、远处云层翻滚三段共用同一背景锚 + 固定 seed 20260916;提示词逐段写死「建筑纹丝不动、云海缓慢翻滚、仙鹤被建筑遮挡后不再出现」
5人物出现后一直向前走,姿态优雅女性化段 1 第 2 秒从左侧柱后入画(背影);小步、匀速、提胯轻摆、裙裾广袖随步幅轻荡、珠饰轻晃
6除最后一幕全程背影段 1/2 与段 3 前 4.3s 只有背影;段 3 转身瞬间才露侧脸/三分脸
7最后向左转进入建筑段 3 第 5.2s 起左转,穿左侧龙柱进殿,被柱子完全遮挡后镜头停在空廊+云海(实测:n=125 起可见侧脸,n=168 已完全出画)
8画面 480P一采画布 864×480(0.4 MP,16:9)
9双采保持清晰度H3 Director Refine 二采:mode=upscale / upscale_method=h3_latent,学习型 3D 潜空间放大(minimax_h3_latent_upscaler_3d_fp16)→ 1280×704(720P 档,像素 ×2.25),euler + BasicScheduler(beta, 3, denoise 0.2)
10然后 RTX 放大两倍DaSiWa RTX VSR 2.0×(分块执行,每块 130 帧)→ 2560×1408
11无运镜漂移 / 建筑融化 / 字幕水印提示词写死 locked-off static camera、无 cut、无字幕水印;风格锁定 Kodak Vision3 500T、深青阴影+暖金高光

二、执行链路(官方 Director + Refine,未走 dasiwa V18 模板)

UNETLoader  Minimax-h3_Singularity_ref2va_Pruned_v1.3_int8   (20.97GB)
  └ LoraLoaderModelOnly  minimax_h3_ref2v_turbo_4step_v0.1    (strength 1.0)
      ├→ MiniMaxH3Director   r2v / 1 段 260 帧
      │     864×480,4 步 res_multistep + simple,cfg 1.0,shift video 12 / audio 3
      │     audioMode=generate(生成环境音:风、檐铃、鹤鸣、足音)
      └→ BasicScheduler(beta / 3 步 / denoise 0.2)─┐
             MiniMaxH3DirectorRefine ←───────────────┘
               mode=upscale + h3_latent + 跟随导演台 → 1280×704
                  └ CreateVideo → SaveVideo
                        └ 后处理:DaSiWa_RTX_UpscalerRefiner(VSR 2.0×,130 帧/块)→ 2560×1408
                              └ ffmpeg 12 帧交叉溶像拼接 → 成片

关键取舍

  1. 不用 dasiwa V18 模板:V18 是「单采 + fl2va/ref2va 双路切换」,没有二采;「双采」只有官方 Director 外接 MiniMaxH3DirectorRefine 才有。
  2. 删掉 SageAttention 补丁:作者自带的 minimax_h3_director_二采_加速.json 两条模型链末端都挂了 PathchSageAttentionKJ + MiniMaxH3MemoryEfficientSageAttentionPatch。本机 SageAttention 2.2.0 无 sm120 内核, 长序列会走 triton JIT → GSP 挂死(2026-09-14 已确认的掉总线元凶)。本次两条链都不挂这两个节点, 同理也不启用 Sol-Attn(同为 triton 稀疏注意力)。
  3. 三段拆成三个独立任务(不是三段一个任务):见第四节——多段单任务必挂机。
  4. RTX 放大不放进生成图里:成片 780 帧 @1280×704 一次过 RTX,输出 2560×1408 张量要 ~34GB 内存; 改为每段再切 2 块(130 帧)单独放大再拼接,单块峰值 ~7GB。实测 130 帧只要 0.3 分钟。
  5. continuityKeepTail=false:默认「保完整」会让续接段多导出对齐余量(272 帧/段),总长漂到 33.5s。

三、提示词改写要点(相对用户给的模板)

原模板是「玉廊空镜 + 环境微动」的单镜描述,本次按实际需求补三层:

三段成品提示词见 提示词与参数/prompt_seg1.txt、prompt_seg2c.txt(段 2 采用)、prompt_seg3.txt。


四、★ 关键实验:AV Latent 尾部续接(段间引导)两次整机硬挂 —— 相关性确认、因果待隔离实验

用户要求试一次 latent 锚定(官方 Director 的 段间引导 / guide motion context 22f):

#时间配置结果
109-16 23:20→23:473 段单任务 + 段间引导 22f + Singularity + 二采(780 帧)跑到约 25 分钟(段 2)整机冻结:ARP/ICMP/SSH 全消失,人工断电
209-17 20:14→20:23同上重跑启动后 约 6 分钟(段 1 一采第 1 步采完之后)再次整机冻结
对照09-17 18:46→20:11单段独立任务 ×5(段 1/2/3/段2-v2 + 烟测)全部跑完,单次 18~36 分钟,MemAvailable 稳定在 20~25GB

崩溃前日志(.bak)末尾就停在:0/4 … 25%|1/4 [01:31<04:34, 91.66s/it] —— 即第一段一采第 1 步刚结束就冻死。

用到的确实是 AV Latent 尾部续接(不是像素尾帧):崩溃任务的 timeline.output 为 {"continuityEnabled": true, "continuityOverlapFrames": 22, "continuityKeepTail": false},未设 continuityMode → 取默认 guide。director/h3_motion_context.py::apply_motion_context() 会把 上一段的 AV latent 尾部(视频 latent 22 帧 + 音频 latent 24 帧 @40Hz)作为永不降噪 conditioning 钉进下一段,解码后再裁掉钉入前缀(日志原话 previous AV tail + trim prefix)。 另:因挂了二采、画布 864×480→1280×704,select_continuity_pin_latent() 取的是上一段一采的 AV latent(v9 行为)。

⚠️ 归因更正(重要):初版报告把挂机归因于「连续性补丁 monkey-patch」,这条站不住—— apply_motion_context() 只在 seg.index > 0 时调用,而两次崩溃都发生在段 1 的一采采样 (第二次日志停在段 1 第 1 步采完 25%|1/4 [01:31<04:34, 91.66s/it]),那一刻还没有任何 pin, ensure_layout_patch() / ensure_payload_patch() 也还没装载。 所以目前只确认相关性,未确认因果:

路径是否有 AV latent 续接结果
3 段单任务 + 段间引导(09-16 / 09-17 两次)有(guide 22f + 音频 24f)整机冻结 ×2
单段独立任务 ×5(含 36 分钟那次)无(纯像素尾帧)全部跑通

(补丁路径的潜在风险仍然真实:h3_context_patches.py 会 monkey-patch comfy.ldm.minimax.model 的 layout/payload,且其注释明确 Refuses to stack on foreign H3 layout / payload wrappers (including standalone Motion Context packs),而本机就装着独立的 ComfyUI-H3-Motion-Context—— 但本次挂机没有证据说明是它。)

结论(已写入运维经验):本机跑 H3 长视频,稳妥做法是 每段一个独立任务 + 上一段尾帧作像素参考 + 后期交叉溶像;暂停使用 3 段单任务 + 段间引导。

遗留待做(用户已同意以后隔离验证):跑一次「3 段单任务但关掉段间引导」, 才能分清责任在「多段单任务本身」还是「连续性/补丁路径」。(有一次挂机风险,择机再做。)


五、接缝:像素锚定管不住构图

三段独立生成时,段与段之间人物比例会跳(模型倾向把人物摆到自己习惯的构图)。 两个变体都试过,都跳:

变体做法与上段尾帧的全帧 MAD结论
b尾帧作 <Picture 3>21.09跳
c(采用)尾帧作 <Picture 1>(首帧锚定)+ 提示词写死开场状态18.15相对更好

→ 段 2 交付用的是 变体 c(段2_v2_1280x704.mp4)。接缝用 12 帧(0.5s)交叉溶像隐藏, 溶像中点会有约 0.5s 的叠影(交叉溶像的固有现象);想要更硬的观感可用交付里的硬切版。


六、交付物

目录:~/Downloads/dl-hub/10-视频生成流水线/20260916_2340_仙宫玉廊_汉服女子背影行走/

文件规格说明
成片_三段交叉溶像_31s.mp42560×1408 / 757 帧 / 31.64s / 24fps推荐成片:三段 + 两处 12 帧交叉溶像
成片_三段硬切_32s.mp42560×1408 / 780 帧 / 32.59s / 24fps硬切拼接版(保留分段原貌)
段1_入画前行_2560x1408.mp4260 帧 / 10.83s空镜 → 人物入画 → 背影前行
段2_廊中前行_2560x1408.mp4260 帧 / 10.83s廊中继续前行(背影,变体 c)
段3_左转入殿_2560x1408.mp4260 帧 / 10.83s前行 → 左转 → 入殿 → 空镜收尾
段{1,2,3}_1280x704.mp41280×704双采原片(未放大,便于对比画质)
验收_成片全片12帧.jpg / 验收_两个接缝溶像.jpg—抽帧验收图
提示词与参数/—三段提示词全文 + 全部脚本(h3_run.py / h3_seg.py / rtx_upscale.py / assemble_film.sh)+ API prompt JSON

参数留档:seed 20260916(三段同一固定值)|一采 864×480、4 步 res_multistep/simple、cfg 1.0、shift 12/3| 二采 h3_latent→1280×704、euler、beta/3 步/denoise 0.2|RTX VSR 2.0×|无 Sage / 无 Sol / 无段间引导。

耗时:段 1 = 19.4 min,段 2(b) = 19.5 min,段 2(c) = 36.0 min,段 3 = 18.5 min; RTX 放大 3 段 × 2 块 ≈ 每块 0.3 min(合计不到 3 min);拼接与溶像 < 1 min。 另:两次挂机各损失约 25 分钟(以及两次人工断电重启)。


七、复现命令

# 1) 单段生成(第一段,无尾帧)
cd ~/Downloads/h3-tasks/bg-corridor
env -u ALL_PROXY no_proxy='*' ~/Downloads/vlm-env/bin/python -u h3_seg.py --seg 1

# 2) 抽上一段尾帧 → 生成下一段(variant c:尾帧作 <Picture 1>)
ffmpeg -y -sseof -0.15 -i "$T/段1_1280x704.mp4" -vsync 0 -q:v 2 -frames:v 1 seg1_tail.jpg
env -u ALL_PROXY no_proxy='*' ~/Downloads/vlm-env/bin/python -u h3_seg.py --seg 2 --tail seg1_tail.jpg --variant c

# 3) RTX VSR 2× 放大(每段 2 块 × 130 帧)
env -u ALL_PROXY no_proxy='*' ~/Downloads/vlm-env/bin/python -u rtx_upscale.py "$T/段1_1280x704.mp4" "$T/rtx/seg1" --chunk-frames 130

# 4) 12 帧交叉溶像拼接 + 硬切版
bash assemble_film.sh "$T" "段1_入画前行_2560x1408.mp4" "段2_廊中前行_2560x1408.mp4" "段3_左转入殿_2560x1408.mp4"

GPU 机侧注意:ComfyUI 不自启,用 bash ~/restart_comfy.sh 启动; 本次额外挂了内存哨兵 ~/ram_guard.sh(MemAvailable < 2.5GB 连续两次 → 调 /interrupt,防 09-15 那种内存窒息冻结)。


八、建议

  1. 长视频一律「每段独立任务」,不要用 Director 段间引导;接缝用交叉溶像或干脆设计成硬切分镜。
  2. 加内存:32GB 跑 H3(15GB TE + 21GB UNET)本就吃紧;64GB 能显著降低冻结风险。
  3. 崩溃自动重启:本机 panic=0 / hung_task_panic=0,硬挂后只能人工断电; 打开 kernel.panic=10 + hardlockup_panic=1 能把「等人来按电源」变成 2 分钟自愈(用户本次选择不改,留待考虑)。
  4. 想要真正无缝的三段,可考虑:把段长压到单次 5~10s 并用「上段尾帧 + 相同 seed」多次迭代, 或改用官方 motion_context 之外的其他续接手段(当前本机唯一可用的是像素锚定)。

九、清晰度提升实测(2026-09-18 通宵跑通)

9.1 为什么之前的 480P 版糊 —— 自毁项 + 画布太小

  1. 提示词自己要求虚化:原提示词写了 soft-focus cinematic quality + shallow depth of field (已在后续版本中移除,改为 tack-sharp / crisp micro-detail)。
  2. 生成画布只有 0.4MP:清晰度的主导项是「画布」,不是步数、更不是放大。480P 再怎么放 也只有 0.4MP 的细节密度。

9.2 三档配置的同帧锐度实测(拉普拉斯方差,同尺寸比较)

配置帧60帧140帧220相对 480P 链
864×480 / 4 步 / Turbo LoRA(拉大到 1344×768)85.030.361.01.00×
1344×768 / 12 步 / 无 LoRA(最终采用)273.7111.2224.93.2~3.7×
1344×768 / 20 步 / 无 LoRA(官方基线)335.7121.8243.64.0×

9.3 关键性能事实(决定配方,别再踩)

9.4 第三次硬挂(01:00:41)与归因更新

用完全自建图(无 Director / 无补丁 / 无 Sage / 无 Sol)跑 20 步官方基线时, 段 1(88 分钟)跑通、段 2 在 13/20 步、1:18:05 时整机硬挂; 内存哨兵全程只有心跳(20~25GB 可用)从未触发 → 排除内存窒息; 每步耗时从 253s 劣化到 360s(+42%) → 长时满载下的热/供电劣化。 详情见 dl-hub/06-ComfyUI-H3运维记录/2026-09-17-Director段间引导latent锚定导致整机硬挂-两次复现.md 第八节。

9.5 最终交付(12 步 / 1344×768 / AV latent 续接)

文件规格说明
成片_官方基线720P_12步_1344x768.mp41344×768 / 804 帧 / 33.53s / 24fps / AAC 32kHz当前最佳版本,三段 -c copy 直拼,无溶像
段{1,2,3}_官方基线720P_12步_1344x768.mp4260 / 272 / 272 帧10.83 / 11.33 / 11.33s
验收_12步720P_全片12帧.jpg / 验收_12步720P_两处接缝.jpg—抽帧验收
锐度对比_12步_vs_20步.jpg / 锐度对比_480P链_vs_官方720P.jpg—1:1 像素肉眼对比

接缝实测(MAD,越小越连续):段1→段2 4.51(同段自然帧差 4.98)、 段2→段3 4.20(同段自然帧差 3.69)→ 两处接缝均比同段自然帧差更小,无可视接缝。

三段耗时:54 / 76 / 76 分钟(含段间 5 分钟冷却),全程无挂机、内存哨兵零告警。

9.6 还能再提升的加分层(按性价比)

  1. RTX VSR 2×(1344×768 → 2688×1536):130 帧/块约 0.3 分钟,全片 7 块约 3 分钟; 像素域锐化,不增新细节但观感更锐。推荐叠加。
  2. 二采精修(同分辨率,beta/3 步/denoise 0.2):+30~40% 时间,细节再补一点。
  3. 降到 8 步换更短单段(~40 分钟/段)以进一步远离挂机区间 —— 但会再损失约 10% 锐度。
  4. 根治方向:内存加到 64GB + 打开崩溃自动重启(kernel.panic=10 等), 并把单段控制在 ≤60 分钟。

十、段3 回头瞬间脸部修复/重绘(2026-09-18)

10.1 问题

段 3 第 5.2s 起人物左转、短暂露出侧脸(帧 ~115-160),但此时她在中远景, 脸在 1344×768 画面里只有 24~36px —— 无论分辨率还是步数都救不了这么小的脸, H3 在「头占画面比例小」时必然发虚(这是 H3 的属性,720p 以上同样存在)。

10.2 做法:ComfyUI-H3-FaceRefine 逐帧重绘

VHS_LoadVideoPath(段3) → H3FaceTrackCrop(检测+裁脸, frame_count→length)
  → MiniMaxH3ReferenceToVideo(768×768, 身份参考=三视图裁出的正面脸, 提示词=段3原提示词)
  → H3InjectVideoLatent(注入原片潜空间) → H3PerFrameDenoise(模型路径内, er_sde/simple 8步/denoise 0.4)
  → VAEDecode → H3FaceStitch(贴回原底, face_only) → VHS_VideoCombine

10.3 两版参数与结果

版本画布crop_factor置信度结果(视觉模型三版盲评)
原片———最糊:五官边缘发虚、皮肤有噪点
v1auto 512×5123.00.35比原片清晰,但有「磨皮/涂抹感」
v2(采用)manual 768×7682.50.4五官立体感与边缘锐度最佳,皮肤干净无噪点,最锐利自然

10.4 交付

文件说明
成片_官方基线720P_12步_段3脸部修复_1344x768.mp4段1+段2+段3(修复v2) 直拼,804 帧 / 33.53s
段3_脸部修复_v2_768.mp4仅段3(272 帧 / 11.33s)

说明:脸在画面里本来就小(25~36px),修复提升的是「同一尺寸下的锐度/干净度」, 视觉模型确认三版呈阶梯式递进(原片→v1→v2)。若想要「脸更醒目」级别的提升, 只能靠分镜(转身时切近景)或放大画面,见 §9.6。

下载此文件