ComfyUI 第11課:短片首中尾影格檢查 查核日期:2026-10-11(台灣)。教材配置,不是 ComfyUI 已執行結果。 開始前: 1. 下載 lesson-11-frame-inspection.json 與 lesson-11-test-41f.mp4。 2. 在 ComfyUI Workflow → Open 開啟 JSON。 3. 在 Load Video 上傳及選取 MP4。JSON 只引用檔名,不包含影片。 4. 確認 Get Video Components 的 images 接三個 ImageFromBatch。 5. batch_index 為0、20、40;length都是1。 6. 執行後保存三張PNG與一張檢查圖,填寫自己的 observations.csv。 來源素材: MP4 是本站原創程式繪圖,以 CPU 編碼,不是 AI/Wan 生成,不是 ComfyUI 介面錄影。 352×464、41影格、固定24fps、無聲、約1.708333秒;已用 FFprobe 實際計數確認。 索引10、11、12(第11–13張)刻意拿掉黃色徽章;0、20、40看不到此異常。 練習圖中的角色、文字、格線與異常都是設計的測試內容,不是模型品質證據。 工作流: 11個執行節點與1個Note;12條資料連線。全部核心節點,不需額外模型或外掛。 LoadVideo → GetVideoComponents → 三個ImageFromBatch → 各自SaveImage。 首+中 → ImageStitch,再+尾 → 第二個ImageStitch → SaveImage。 兩個ImageStitch:right、match_image_size=false、spacing_width=16、spacing_color=white。 同尺寸三張352×464組成1088×464檢查圖。704×928的三張則是2144×928。 輸出前綴:lesson11/first、lesson11/middle、lesson11/last、lesson11/contact-sheet。 實際檔名附有ComfyUI計數;不要用它推論影格索引。 重要限制: - 三張抽查不等於全片QA;仍需完整播放,必要時逐格檢查未覆蓋範圍。 - 0/20/40只有實際41影格時才是這堂課的首/中/尾;不要只相信檔名或length設定。 - ImageFromBatch索引越界會clamp到有效範圍,可能重複取最後一格而不報錯。 - length是取幾張,不是影片總長;本練習都填1。 - 可變幀率VFR不能直接用index/平均fps換成準確時間戳。 - GetVideoComponents先解碼影格批次,不是只解碼被選取的三張;先用短片,勿直接載入長片。 - 本文未匯入ComfyUI GUI、未執行ComfyUI工作流或GPU推論,未驗證硬體速度與最低容量。 可選影格計數(電腦已有FFprobe時;不要求為此安裝): ffprobe -v error -select_streams v:0 -count_frames -show_entries stream=width,height,nb_read_frames,r_frame_rate,avg_frame_rate,duration -of json "lesson-11-test-41f.mp4" nb_read_frames為解碼計數;本素材應為41,平均及標示幀率皆為24/1。 任意影片仍須注意VFR、可用時間戳及解碼失敗;相同的兩個fps數值本身不是所有檔案的CFR證明。 新素材的實際N影格可抽0、floor((N-1)/2)、N-1;這是序列中點,不保證時間中點。 參考圖: /images/courses/comfyui/11/decoded-frame-000.png /images/courses/comfyui/11/decoded-frame-010.png /images/courses/comfyui/11/decoded-frame-020.png /images/courses/comfyui/11/decoded-frame-040.png 以上為同一MP4的FFmpeg實際解碼PNG,保留原始解碼輸出位元組。 reference-contact-sheet.png用CPU直接拼接0/20/40原尺寸像素,白邊16px;不是ComfyUI執行結果。 missed-interval-example.png有縮圖和橘框註記;原始解碼PNG沒有加框或修圖。 不同解碼器與PNG metadata可能造成雜湊不同;雜湊用於驗證本站下載檔,不作跨環境輸出要求。 版本:Comfy-Org/ComfyUI 7f7fd918ed0815c5d5ef2ccfe44bfc8e72cfd217 https://github.com/Comfy-Org/ComfyUI/blob/7f7fd918ed0815c5d5ef2ccfe44bfc8e72cfd217/comfy_extras/nodes_video.py https://github.com/Comfy-Org/ComfyUI/blob/7f7fd918ed0815c5d5ef2ccfe44bfc8e72cfd217/comfy_extras/nodes_images.py https://github.com/Comfy-Org/ComfyUI/blob/7f7fd918ed0815c5d5ef2ccfe44bfc8e72cfd217/nodes.py 所有圖解、測試素材與配置均為原創教材;LICENSE.txt為本課原創素材使用說明。 media-sources.json列出檔案位元組與SHA256,不含模型、私人帳號或登入資料。