Communitygithub.com

comfy-h3-video-producer

本機 ComfyUI 腳本轉影片自動生產管線(MiniMax H3)。用戶提供腳本要求以 ComfyUI 產出分鏡影片時使用。涵蓋:工作流程握手、導演調度與段落規劃、H3 提示詞撰寫、提交與自動監工、一採雙檢閘門、收片清床音與拼接、斷點續產。

comfy-h3-video-producer 是什麼?

這是一個專為 ComfyUI 與 MiniMax H3 設計的本地端自動化影片生產管線,能將腳本直接轉為完整成片。技能主要特色包括:透過工作流程握手(不寫死節點號)確保與使用者當前工作流程相容;採用導演調度引擎自動規劃分鏡段落;強制執行前置首幀生圖核驗(Keyframe Gate),在生成影片前先確認關鍵幀,再透過 I2V 鎖臉防止人臉變形;並整合影視級配樂智慧避讓(Audio Ducking)與自動語速密度調控。技能支援 Windows UTF-8 終端環境,透過多個 Python 腳本(如 h3wf.py、sop_run.py、h3proj.py、keyframe_gate.py、cinematic_audio_mixer.py)形成完整工具鏈,涵蓋從腳本分析、提示詞編譯、提交監工、雙重品質檢查到最終影片拼接的完整閉環。此技能適用於 Claude Code、Cursor、Codex 等 AI Agent 平台,並內建斷點續產機制,確保長時間生產任務的穩定性。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/abserari/drama-production-skills/tree/HEAD/skills/comfy-h3-video-producer

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

ComfyUI H3 腳本轉影片(v5.0 導演級視聽語言與工業工程化規範版)

v5.0 重大里程碑更新(2026-11,視聽語言工業化與七大落地痛點全量攻堅)

  • 1. 分鏡定幀圖前置生成工序(I2V 場景/角色/道具聯合定幀): 徹底終結無定幀圖下的 T2V 盲跑。每個分鏡在影片取樣前,先由生圖模型結合分鏡機位、角色三視圖、道具設定生成 16:9 聯合首幀定幀圖(keyframe_segXX.png),質檢定案後餵入 I2V 節點,第 0 幀鎖死骨骼幾何、衣服紋理與道具輪廓。
  • 2. 單人說話鎖定與全員閉嘴抑制協議(Speaker Lock & Mouth Suppression): 徹底消滅「場景裡所有人跟著台詞一起動嘴」的木偶劇慘狀。在 [Subject 1] 明確唯一主說話人,在 [Action 1] 強制主謂動作分離,非發言角色強制追加閉嘴抑制死條款(lips tightly sealed, completely silent, showing tense glare without mouth movement)。
  • 3. 全域風格母卡(Global Style Bible)與前置定風閘門: 拒絕每集隨機制圖風格漂移。劇作啟動前必須確立全域 Style Bible(明確 visual_genre, environment_base, lighting_base, color_palette, quality_base),生成 4 張不同景別定風樣張人工確認後全劇鎖定繼承。
  • 4. 短劇黃金語速與密度調控(Pacing & Density Normalization): 解決人物說話拖沓、拉長音發呆問題。175 幀(7.29s)標準時序下,台詞嚴格匹配 20~28 個純漢字(短劇黃金語速 3.2~4.0 字/秒);並在 [Audio 1] 中顯式宣告 spoken crisply and rapidly without dragging syllables;前 4.5s 快速講完,後 2.8s 切入冷眼凝視與動作反應。
  • 5. 六大電影級動態運鏡與動線調度庫(Director Camera & Blocking): 嚴禁連續出現兩人正面站樁交談!強制引入 6 大動態鏡頭調度:① 動線交錯慢推、② 道具特寫拉焦至眼眸、③ 荷蘭角斜切逼迫、④ 背身轉頭冷酷回眸、⑤ 貼耳逼近壓迫、⑥ 側光剪影對峙。
  • 6. 純正普通話發音規約與 ASR 語種漂移閘門(Mandarin Purity & Language Gate): 台詞全量純中文歸一化(阿拉伯數字轉大寫漢字、剝離英文縮寫與非法符號);在 [Audio 1] 強制添加 Strict Mandarin Chinese dialogue only, standard native Chinese accent, zero foreign tone;整合 Whisper ASR 語言檢測,自動攔截非中文字幕與語言漂移。
  • 7. 工程化 Master 母調度管線閉環: 沉澱 scripts/director_engine_v3.py,實現分鏡表、提示詞編譯、語速密度核算、說話主體鎖定的全流程自動化。

v4.1 更新(2026-11,官方 v2.2 提示詞規約與 175 幀時序深化)

  • 提示詞規範升級至 v2.2:
    • 接入 MiniMax 官方 Prompt 指南(references/official/base-en.txt, ref-en.txt);
    • 運鏡三要素(類型+幅度+速度)以自然句寫入鏡頭內部,嚴禁拍末 Tag 堆疊;
    • 素材權限明確宣告 不複製原圖機位,不複製佔畫比例;
    • 嚴格執行複雜度預算:單段(175幀/7.29s)最多 3 主體 + 1 句台詞。
  • 段長鎖定主力 175 幀(7.29s):
    • 243 幀正式退役,硬上限設為 192 幀(8.00s),生產主力統一鎖定 175 幀,段尾留足 1.0~1.2s 閉嘴緩衝;
    • 調度層服從度禁區(遠景只建空間認臉切進中近景、禁用後拉與穿窗)。
  • Windows UTF-8 全終端防禦:
    • force_utf8_stdio() 統一重置 stdout/stderr 為 UTF-8,杜絕 GBK/CP936 編碼異常崩潰。
  • 質檢與遠景修臉工具鏈擴容:
    • 引入 Whisper ASR 台詞質檢 (scripts/check_dialogue_asr.py)、尾拍光流與接縫質檢 (scripts/sop_check.py)、續接尾段留白豁免 (--tail-exempt) 與中遠景自適應修臉 (scripts/face_refine_pipeline.py)。

v4.0 更新(2026-10,工業級首幀鎖臉防形變與影視配樂雙革命)

  • 首幀生圖核驗 + I2V 幾何鎖臉鐵律(根治純文生影片 T2V 人臉變形與道具軟化): 單張文生圖僅需 5-15 秒,不滿意秒級重抽;嚴禁在沒定首幀的情況下盲跑 8 分鐘 T2V 碰運氣!事後自動質檢只能亡羊補牢,高代價重抽治標不治本。凡有人物特寫、關鍵道具交互,必須先定首幀,注入 first_frame 走 I2V 模式,第 0 幀鎖死解剖幾何與道具電路,H3 僅負責時序動力學與唇形同步,人臉形變率從 30% 暴跌至 2% 以下。詳見 references/keyframe_i2v_guide.md。
  • 影視級配樂融合與人聲智慧避讓 (Audio Ducking): 提示詞徹底禁止 H3 自帶生成失真床音;清洗對白與動作擬音後,全片統一鋪設獨立高保真 BGM,採用 FFmpeg 原生 sidechaincompress 動態側鏈避讓:人聲開口瞬時下潛 -14dB,台詞結束 0.3-0.5s 平滑揚起,打造商業短劇視聽爽感。新增工具 scripts/cinematic_audio_mixer.py。
  • 新增首幀閘門工具 scripts/keyframe_gate.py:支援工程級首幀狀態巡檢、ComfyUI 倉同步與 I2V 節點安全注入。

v3.2 更新(2026-10-25)

  • 新增 §13 什麼時候更新這個 skill:六個觸發條件、四類不許搬進來的內容、遷移三問、落位規則、改完三步自檢
  • 一句話紀律:只沉澱「換劇本後仍成立」的機制與判據,項目文件一律不進 skill

v3.1 更新(2026-10,13 段 / 86 秒成片實測沉澱)

  • 新增 §4.1 H3 的服從度邊界(後拉失效、穿窗開門、窗外運動不生成、景別鎖死、否定式鏡頭指令)
  • 新增 §5.1 顯存回收(曾經讓一段從 5 分鐘跑成 33 分鐘)
  • §8 決策樹補 6 條(結尾動作被搶、一拍動作過多、擬音被鋪成床音、quiet-gain 副作用、F0 誤判)
  • §12 補台詞位置四版梯度、cont off 的 trim 記帳
  • §3 段長推薦改為 175 幀(原寫 124/243,已過時)
  • 修正了提示詞規範裡兩處會誤導的舊範例:「台詞寫在節拍末尾」應為節拍最前;「胸腔每 2.5 秒起伏」會被當成發聲指令生成呼吸聲,已刪除

把劇本變成成片:握手 → 導演調度 → 首幀核驗(I2V) → 提示詞 → 提交 → 監工雙檢 → 收片 → 避讓混音與拼接。

v4 的核心認知:把「生成影片碰運氣 + 事後質檢重抽」升級為「前置低成本控圖 + I2V 鎖臉執行 + 影視級避讓混音」。

一條鐵律:一個任務 = 一個本地工程目錄 + 一個導演台工程名(h3_chain/<工程名>)。 這兩樣從第一段定下來到 concat 結束都不許換。換了不是「文件放錯地方」,而是續接直接斷:續拍檔按 chain.order[k-1] 找上一段,工程名一變就找不著,本段會被靜默當成第一段重畫,成片還會歸位到另一部片子的目錄。綁定會寫進 project.json 的 chain 欄位,submit 每次都比對,不一致直接拒收(不是警告)。要換只能整體換:新工程 + 新導演台工程名,從第一段重來。完整規則見 §10.1。

0. 運行契約(先明確誰幹什麼)

誰負責
Agent(全自動)讀劇本、導演調度、首幀核驗、寫提示詞、preflight、提交、監工、雙檢、收片、清床音、配樂避讓混音、拼接、交付、寫檯帳
用戶(只做三件事)① 打開 ComfyUI 並載入工作流,說一聲「就緒」 ② 劇本/風格/首幀候選的一次性定調 ③ 看片驗收

Agent 不許做的七件事

  1. 不許在工作流沒握手(wf_map.json 不存在)時提交。
  2. 不許跳過 gate(一採雙檢)直接 finish —— 腳本會拒收,不要試圖繞。
  3. 不許把 state/抽幀/臨時 wav 寫進技能目錄(paths.py 有硬護欄)。
  4. 不許憑「上次的節點號」改接線 —— 只注入三段資料,絕不動超分/終片節點的連線。
  5. 不許在有人物特寫或關鍵道具交互時,跳過首幀核驗盲跑純文生影片 (T2V) —— 靜態生圖核驗只要 5-15 秒,不滿意秒級重抽;跑 8 分鐘 T2V 再事後質檢是高代價自殺。必須先定首幀,注入 first_frame 走 I2V 鎖臉鎖道具!
  6. 不許在沒抽幀看畫面時就提下一段 —— preflight 只管文字結構,不管畫面。落盤後先抽 4-6 格拼圖看一眼,再提下一段;正好也避開了「兩段提交太快導致顯存髒態」(見 §5.1)。
  7. 不許把當次的項目文件無腦搬進 skill —— 片名/角色名/段號/plan.json/assets/*.json/某段提示詞原文/當次 trim 帳/黑名單 seed,一律留在項目目錄。只沉澱「換劇本後仍成立」的機制、判據、寫法。判據與落位規則見 §13。

只有這四種情況才停下來問用戶:劇本有歧義且影響分鏡結構 / 風格或畫幅定調 / 素材缺失且無法用文字定義 / 同一段重抽 3 次仍不過。

1. 核心工具集(完整生產工具鏈)

工具幹什麼關鍵子命令
scripts/h3wf.py工作流握手:從 ComfyUI 讀實際執行過的圖,自動認節點角色sync show doctor
scripts/sop_run.py生產:提交(內含 preflight)、自動監工、等終片submit watch final abort
scripts/h3proj.py工程與閘門:檯帳、一採雙檢、視覺簽字、收片、拼接、殘留清理new status gate review finish concat residue
scripts/keyframe_gate.py首幀核驗與 I2V 注入:首幀狀態巡檢、ComfyUI 倉同步、注入 first_frame--project --seg --sync
scripts/face_refine_pipeline.py外部遠景修臉工作流:中遠景條件修臉、音頻原樣直通、自定義節點缺失平滑降級--input --output --char-ref --dry-run
scripts/cinematic_audio_mixer.py影視級配樂智慧避讓混音:外掛獨立 BGM,sidechaincompress 自動避讓人聲--input --output --bgm --volume
scripts/check_dialogue_asr.py台詞 ASR 自動比對:VAD 定位語聲段 → Whisper 轉寫 → 與 <d> 原文比對--file --text --seg
scripts/sop_check.py尾拍動作能量與接縫相似度質檢:8 格聯絡表、動作光流比率、釘幀比對--video --seg
scripts/shisei_pose.py(可選) 打鬥/對峙姿態:多視角姿態檢索與線稿提取--search --duo --get --view

解釋器固定用帶 cv2 的 venv: C:/Users/windows/.workbuddy/binaries/python/envs/default/Scripts/python.exe(下稱 PY)

2. 第 0 步:工作流握手(每次開工第一件事,不可跳過)

為什麼不能固化:用戶的工作流會更新(加三採、改超分尺寸、換輸出前綴),節點號一變,寫死的「接線修復」就會把一條跑得通的鏈路改壞 —— 這是 v2 每次報錯的根因。

核心口徑:用戶會隨時在畫布上調參數(改超分尺寸、換模型、調取樣步數),生成必須用他當下的值。 submit 每次都會先核對一遍畫布儲存版(h3wf.refresh_if_stale): 檔案 mtime 變了就重新讀圖,並把改了哪些參數逐條打出來([wf ] 檢測到 N 處參數變更)。 rack/desk/cast 的 h3_data、seed、filename_prefix 是運行時注入的,不算用戶改動,已排除。

但有一個 API 層面繞不過的限制,必須主動告知用戶: ComfyUI 的畫布狀態只有在儲存工作流(Ctrl+S)之後才落到 ComfyUI/user/default/workflows/*.json,未儲存的畫布改動任何介面都讀不到。 所以每次開工要跟用戶說一句:改了參數請 Ctrl+S。 如果用戶改完還按過一次 Queue,那條執行圖會進 /history,也能被第二條判據捕到。

動作:

  1. 先提醒用戶:打開 ComfyUI 桌面程式,載入這次要用的工作流,等他說「好了」。
  2. 前提:sync 讀的是 ComfyUI /history 裡最近一次成功跑完的影片任務。
    • 剛換過工作流 / 剛裝好 → 請用戶在介面裡手動跑一次(哪段都行,跑通即可),再 sync。
    • 一次都沒跑成功過 → 用介面檔案兜底:h3wf.py sync --from-ui "<工作流>.json"(需要 ComfyUI 在跑)。
  3. 探活 + 識別:
    $PY scripts/h3wf.py show      # 只看識別結果
    $PY scripts/h3wf.py sync      # 識別通過後落盤為本次生產依據
    
  4. 判讀輸出:rack/desk/cast/seed/final 五個必需角色必須全部有值;缺了就是工作流換了節點類名,把這行貼給用戶看,不要自己猜。[note] 裡會寫多候選是怎麼選的。同一份輸出還會給出三樣東西,缺一樣都會讓後面的環節踩坑:
    • 工程名(導演台 chain.name):submit 用它決定成片歸位到 h3_chain/ 的哪個目錄,並且第一次 submit 就把它寫進 project.json.chain 當綁定。顯示「—」說明導演台沒填工程名,此時 submit 會退回技能工程名並告警 —— 那等於另起一部片子(且不會寫綁定)。綁定之後換名字會被拒收,見 §10.1。
    • 一採前綴:watch/gate --latest 靠它只認一採檔案。顯示「—」時退回全前綴,跑完整鏈後可能把超分/終片當成一採去雙檢。
    • [WARN] 收片鏈路:缺「段尾歸位」或它的「順序錨」沒接線,成片不會回到導演台,下一段接不上。
  5. ComfyUI 沒開時允許無頭啟動(埠 8188,不影響桌面程式):
    cd "D:/Comfy-Desktop/ComfyUI-Installs/ComfyUI (1)/ComfyUI"
    ".venv/Scripts/python.exe" main.py --port 8188 \
      --input-directory "D:/Comfy-Desktop/ComfyUI-Shared/input" \
      --output-directory "D:/Comfy-Desktop/ComfyUI-Shared/output" \
      --enable-assets --disable-auto-launch
    
    但優先使用戶自己開的那份,節點狀態以他的介面為準。

工作流變了怎麼辦:h3wf.py doctor 會列出「節點號變了 / 前綴變了 / 工程名變了 / 角色缺失」。 確認是有意更新 → h3wf.py sync --force 重新握手,之後所有提交自動用新圖。 submit 每次都複核指紋,漂移未確認會直接拒收(不會偷偷用舊圖跑一夜)。握手時會記一條 history_seq 水位線:比它更早的執行圖不算漂移(/history 清空前留下的舊記錄),只有握手之後新跑出來的圖不同才會拒收。

3. 第 1 步:導演調度(強制,拿到劇本第一件事)

不允許拿到劇本直接寫提示詞。 先載入 director-advisor 技能出完整分鏡方案:

  1. 拆五要素:情緒基調 / 戲劇節拍 / 人物關係 / 空間 / 動作
  2. 定節奏骨架:鏡頭數、張力曲線(最高點只有一個)、開場鏡與收尾鏡
  3. 逐鏡設計:景別=情緒距離、運鏡=情緒運動、一鏡一個動作單元、時長 1-3s(最長 5s),每鏡帶一行設計理由
  4. 掛 1-2 個真實電影案例錨(只從 director-advisor/references/master_cases.md 取)

再按 references/directing_bridge.md 換算成 H3 的段,並落盤段規劃表:

{"name": "片名", "segs": [
  {"seg": "seg01", "length": 175, "shots": "1-4", "dialogue": false,
   "hook": "首段:從全景建立空間", "sfx": true, "event": "她走進石屋並放下燈"}
]}
  • length:175(≈7.29s,3-4 鏡)是推薦值;124(≈5.17s,1-2 鏡)/ 243(≈10.13s,2-4 鏡)也可用。關鍵公式:淨新畫面 = length − cont_frames。cont_frames=5 時,175 幀淨剩 170 幀(7.08s),124 幀淨剩 85 幀(3.54s)—— 同樣的續接開銷,175 的淨產出翻倍,渲染只要 4–4.5 分鐘,是性價比拐點。有台詞段也用 175,不要用 243:段越長台詞越容易頂到段末(見 §12 台詞時間軸鐵律)。
  • hook:與上段的接續(姿態/視線/光線承接),寫不出 hook 說明段拆錯了。
  • dialogue/sfx:決定音頻閘門查哪幾項(無台詞段查靜音,無擬音段關掉 --fx)。
  • 校驗:$PY scripts/h3proj.py plan --check

一段 = 一個事件,段內可多鏡([節拍 N] 就是鏡頭位,寫「硬切至…」H3 就照切); 不能切空間(地圖)和主要事件。切點必須踩在動作上,不能按秒均分。

寫分鏡時同時過兩道內容關(詳見 references/vividness.md):

  • 邏輯四問:人物這一刻想幹什麼?他在哪、朝向誰?時間/光線是否連續?上一個動作的因果有沒有斷?
  • 生動三件套:每拍至少給一個「動作起因 + 環境反饋 + 材質觸感」,不能只有「站著說話」。

3.1 可選增強:高品質打鬥與雙人對峙姿態管線 (Shisei Pose Guidance)

當劇本涉及近身打鬥、兵刃交鋒、雙人正反打對峙或複雜肢體糾纏時,為避免影片模型常見的「動作發軟、解剖變形、正對翻背對(180°軸線翻轉)」,掛載本地 Shisei 姿態引導(詳見 references/shisei_combat_pipeline.md):

  • 姿態檢索:使用本地檢索腳本查詢 55 組雙人對峙動作及 288 組單人動作:
    python scripts/shisei_pose.py --duo --search "近身"
    
  • 多視角線稿提取:根據導演機位導出 5 大視角(front 正視 / side 側視 / diag 45°斜角 / above 俯視 / below 仰視)線稿至工程目錄:
    python scripts/shisei_pose.py --get D001 --view diag --out references/poses
    
  • 首幀骨架錨定:將提取的姿態線稿與角色卡(sal_character_sheet.jpg 等)聯合餵入生圖引擎(Imagen / Qwen),產出 100% 構圖嚴謹的首幀,再注入 MiniMax H3,杜絕空間漂移與動作軟趴。

3.2 強制工序:分鏡首幀生圖核驗與 I2V 幾何鎖臉 (Keyframe Gate)

工業鐵律(最高優先級認知):凡是有人物正面/半身特寫、關鍵道具交互(如拆表、握槍、數錢、蓋章)的段落,嚴禁純文生影片 (T2V) 盲跑!必須執行「首幀生圖核驗 ➔ 圖生影片 (I2V) 鎖臉防變形」。

  1. 核心邏輯:
    • 靜態生圖僅需 5 ~ 15 秒/張,能將全部潛空間解析度集中在五官髮絲與道具微結構上,不滿意秒級重抽;
    • 影片渲染單段耗時 4 ~ 8 分鐘。純文生影片在無物理錨點下極易發生解剖漂移,事後「自動質檢」重抽成本高出 40 倍且治標不治本;
    • 將選定的首幀圖注入 MiniMaxH3ImageToVideo 的 first_frame 埠後,第 0 幀作為幾何真值鎖死,模型無需腦補結構,注意力全部分配給「驅動動作與對齊口型」,人臉形變率從 30% 暴跌至 2% 以下!
  2. 執行流程:
    • G0 角色資產卡:開工前按 references/character_sheet_standard.md 準備好 2+3 頭身解耦角色設定卡;
    • G1.5 首幀生圖核驗:分鏡寫畢後,使用生圖工具快速生成 16:9 首幀電影劇照,核對五官、眼神聚焦與道具真確性;
    • 定稿落盤:核驗通過後儲存至 <工程>/segments/<seg_id>_keyframe.png(或 .jpg);
    • 自動識別與 I2V 掛載:流水線檢測到首幀圖存在時,通過 scripts/keyframe_gate.py 自動同步至 ComfyUI 並連接 first_frame 埠。未檢測到時自動平滑降級為純文字驅動。詳見 references/keyframe_i2v_guide.md。

4. 第 2 步:寫提示詞(標準 = references/prompt_standard_v2.md)

  • 七段骨架、[節拍 N]、<Audio N> 聲線卡、overall_soundscape 三層聲音,一個字都不能改段名。
  • 提示詞寫到 segments/<seg>.txt(純提示詞正文,不要包程式碼區塊)。
  • 聲線卡:專案裡 voice_card.json 優先(h3proj.py new 已複製範本),跨段逐字一致。
  • preflight 不用單獨跑:submit 內部會調 check_prompt_v2.check(),有 FAIL 直接拒收。想提前單獨看:$PY scripts/check_prompt_v2.py --file segments/seg01.txt --length 243

格式口徑速查(細節以規範文件為準):<Subject N> 全部帶 權限=;情緒詞零容忍;每拍 音效: 逐條點名 +「僅此 N 類,無其他聲音」封口;台詞結束距段末 ≥1.0s;一段一句台詞。

否定詞反噬(實測,踩過兩次):H3 會把禁詞裡的實體名當正面提示去畫。在 防錯約束 寫「嚴禁生成水龍捲、水柱、噴泉」,畫面裡就長出一根白色水柱;在動作描述裡寫「頭盔前沿向上抬」,主角頭上就憑空多一個透明頭盔。規則:要某個東西別出現,就把它的名字從句子裡徹底刪掉,改成正面描述你真正要的畫面(例:「垂直向下俯拍,只有圓形下沉凹陷與沉入水中的黑色人影」),而不是寫「不是X、不要X」。防錯約束 只留抽象約束(無水印/無字幕/無畸形手/不做火焰光效)。

續接 latent 會把首拍人物帶歪(本項目 5 次復現,最貴的一條坑):帶 --cont 的段落,首拍穩定生成一個穿黑色長袍、披散長髮的高個背影,即使——上一段尾幀是「俯拍水面 + 落水黑影」(seg02)還是「陳默面部近景、黑 T 恤」(seg03),參考圖已正確注入([rack] 素材 1 件:陳默→陳默.png)、文案已逐字寫清衣物,全都壓不住。同一提示詞、同一參考圖、同一 seed 區間,改 --cont off 後兩次全部恢復正常(seg02 首拍變回黑 T 恤短髮陳默;seg03 首拍變回純空鏡城市俯瞰)。

判定與處置:

  • 本項目結論:續接保留,但只釘 5 幀(project.json 的 cont_frames: 5,即 0.21 秒)。用戶要的就是「給幾幀保證上下文一致」,39 幀(1.625 秒)太浪費、後期還要逐段掐頭。純硬切處(海邊 → 門外這類劇本本身的地點跳轉)用 --cont off。錨點污染在 5 幀下是否仍會出現,需要實測記錄;一旦首拍人物不對,先試 --cont off。
  • 通用判據:續接只在「同一空間、同一機位、動作直接延續」時才可能有用;一旦發現首拍人物服裝/體型/髮型不對,先換 --cont off 驗一次(一採只要 2 分鐘),比改文案快得多,改文案是無效的。
  • 開啟續接時會列印 [cont ] 承接 clip_xxxx(…);確認首幀再決定要不要留。

4.1 H3 的服從度邊界(寫提示詞前必讀)

這些是實測出來的硬邊界,改文案沒用、換 seed 也沒用,只能在寫法上繞。全部來自 13 段 / 86 秒成片的連續記錄,不是推測。

你想讓它做的事實測結果換成什麼寫法
後拉 / 拉遠 / 推近(位移式運鏡)4 次全敗。寫「只退到看得見擋桿就停」照樣退到窗外、露出另一種內壁改用純搖(同機位只改角度:先向下搖到地板、再向上搖回),或直接硬切
機位穿過窗 / 洞進入內景會順手把門打開。寫死「門保持關閉、只從空著的窗洞穿入」也沒用段內硬切進內景,組裝時把段頭裁到刀口;比任何運鏡過渡都可靠
窗外景物在移動(車在行駛)生成不出來。改寫「白虛線每秒三條迎面湧來」也沒用(窗外區幀間差:靜止 1.26 / 寫了運動 4.15,肉眼都看不出在走)行駛感靠後期引擎聲 + 輕微機身抖動補,別指望生成
「景別不變 / 不推近 / 不推拉」服從度低,後半段照樣推近改成正向描述**「畫面裡始終裝得下整個 X(門框上沿到踏板)」**——用「必須包含什麼」來控
「不要出現 X / 不是 X」反向生效,X 反而被畫出來(同上面的否定詞反噬)把 X 的名字從句子裡徹底刪掉
同一拍做 2 個以上動作每個只做一半,或直接跳過最「無趣」的那個(關門輸給「雙手放方向盤」)一拍最多兩個動作;四個動作就拆拍或刪
「約在第 X 秒說完 / 第 N 拍開頭發出」時間描述完全無效H3 的時間軸由文字事件順序決定,只能調整塊的先後位置
單段寫多個時間段運鏡(0-3s推,3-5s停)Qwen3-VL 誤以為中途切機位,誘發段內畫面閃切單段 [Shot 1] 嚴格只寫 1 個貫穿首尾的運鏡指令
中近景寫站起 (rises from chair)人物頭頂衝出畫框上邊緣,被削掉半個頭爆發戲改用 leans sharply forward across table with veins bulging(暴怒前傾撐桌)
側臉戲寫複數五官 (brows/eyes) 或否定句模型為畫雙眼或被否定詞反噬,強行轉頭看鏡頭嚴禁複數五官與 turn/camera 詞,純用正向側臉靜態描述,尾端用 TailLock 潛變數夾具鎖死
平靜聲紋導致高潮戲吼不出來參考音頻的平靜語調鎖死了音頻潛空間能量採用 T8mars 協議:台詞加咆哮副語言前綴,並在 0.4s 注入物理撞擊瞬態擬音拉爆聲能 (+10dB)

一句話:H3 聽「畫面裡必須有什麼」,不聽「鏡頭不要做什麼」;聽「事件順序」,不聽「秒數」。

續接段還有一條專屬邊界:續寫塊結束的那一幀,模型最容易「重置」回參考圖構圖。如果這時恰好是一次硬切,它就有了「另起一個鏡頭」的機會 —— 實測 seg02 首版前 38 幀承接完美,第 39 幀一結束人物整個消失,跳成參考圖裡那張無人的大全景。所以:續接段不寫硬切,一鏡到底 + 同機位最穩;要分鏡切換就單獨成段。

5. 第 3 步:生成、監工、收片(一條命令一件事)

# ① 提交(preflight + 工程登記 + 續接 + 挑 seed + 記基線)
$PY scripts/sop_run.py submit --seg seg01 --assets 素材.json [--length 243] [--silent]
#    素材.json:{"角色1":"cglide/<項目>/角色1.png", "場景":"cglide/<項目>/場景.png"}
#    --dry-run        只組裝不提交(不登記新段、不碰工程檔案),並讓 ComfyUI 校驗圖的必填項
#    --chain <工程名>  覆蓋握手圖裡的 chain.name(必須等於已綁定值,否則拒收)
#    --rebind         確實要換導演台工程名時才用(改綁,續接從此斷開)
#    --cont auto|off|<續拍檔路徑>   預設 auto=接上一段,off=當第一段
#    --allow-nocont   本段確實要獨立開頭時用:放行「拿不到續拍檔」

# ② 監工(建議背景跑:這一步會一直等到一採落盤,然後立刻雙檢)
$PY scripts/sop_run.py watch --seg seg01 --timeout 3600

**判失敗必須當場讓出 GPU**。一採一落盤,二採就開跑;如果等完整質檢(抽幀+視覺定量,十幾秒)出結論再 abort,三採/超分往往已經在跑,算力白燒。所以 `watch` 現在分兩道:
- **落盤即刻的音頻快檢**(`_fast_audio_gate`

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

comfy-h3-render-core

短剧工业化管线·第 3 工序:H3 物理视频渲染与防翻车调度。负责与本地 ComfyUI 服务交互,调度 MiniMax H3 进行 Turbo 8-step 视频生成。硬核沉淀:Windows WDDM 驱动锁防御、潜空间 32 整除铁律、单人发音锁定与全员闭嘴抑制指令装配、首帧 I2V 安全注入、分镜间显存防泄漏。

drama-audio-soundstage

短剧工业化管线·第 4 工序:声音工程与智能避让配乐。负责 H3 视频生成后的声音精修。硬核沉淀:谱减法音频门控(消灭风噪/电流床音)、Whisper ASR 纯普通话语种漂移拦截、FFmpeg 原生侧链动态避让混音(Sidechain Ducking,台词开口 BGM 瞬降 -14dB,闭嘴扬起)。

drama-director-staging

短剧工业化管线·第 1 工序:编剧与导演分镜调度。负责将剧情大纲或小说文本转化为符合短剧视听规律的工业级分镜。内置:6 大动态运镜轮换决策树、台词纯中文汉字归一化(数字大写)、短剧快节奏 20~28 字密度调控、单人发言与旁观者闭嘴标注。

drama-finishing-upscaler

短剧工业化管线·第 5 工序:终期成片与 1080p 超分增强。负责全集分镜无损拼接与院线级 1080p 超分辨率放大。硬核沉淀:FFmpeg concat 零损耗直拼、RealESRGAN x2plus GPU 独占 FP16 批量超分(~4.8fps)、原生高质量避让音轨无损混流、ffprobe 工业级物理参数验收。

drama-keyframe-forge

短剧工业化管线·第 2 工序:分镜定帧与资产一致性。负责在视频渲染前,建立全局风格母卡 (Style Bible),并为每个分镜前置生成“场景+人物+道具”三合一的 16:9 高清定帧垫图。彻底根治 T2V 盲跑带来的人脸变形、角色换脸、场景变色与道具软化。

相關技能