Nodes/H3 Multishot Advance/Multishot Advance Video Save/Player
ComfyUI Node

Multishot Advance Video Save/Player

Encode, preview, and tag your H3 render

By KursatAs·Created 28 days ago·Updated 14 days ago· 5
Multishot Advance Video Save/Player
  • images
  • audio
  • video_path
  • frame_count
  • duration
source_modeauto
fps24.00
filename_prefixvideo/multishot_advance_%date:yyyyMMdd_hhmmss%
save_outputtrue
containerMP4
video_codecH.264
quality19
presetmedium
bit_depth8-bit
audio_modeinclude_if_connected
audio_codecAuto
audio_bitrate192k
crop_to_audiofalse
pingpongfalse
dimension_policypad_to_even
save_metadatatrue
preview_height320
encode_loadnormal
video_path

Every H3 workflow ends somewhere, and this is the "somewhere" in the Multishot Advance pack. It takes the sampler's output and does what a good video output node should: encode it to a real file with codec and audio choices you control, preview it in the node UI, and - the part people sleep on - embed the workflow so you can drag the finished video back into ComfyUI later and get the exact graph back.

It's the standard terminal node for the pack. Wire it like this:

Multishot Advance Sampler.master_frames -> Multishot Advance Video Save/Player.images
Multishot Advance Sampler.master_audio  -> Multishot Advance Video Save/Player.audio
Multishot Advance Sampler.master_path   -> Multishot Advance Video Save/Player.video_path

How it works

source_mode=auto makes the sensible choice: if video_path points at an existing file (e.g. the sampler's low_ram_master already streamed one to disk), it just plays that; otherwise it encodes images plus optional audio. Encoding goes through ffmpeg, which the pack resolves via imageio-ffmpeg first - that saves you from the classic portable-ComfyUI-with-no-system-ffmpeg failure - and falls back to ffmpeg on PATH.

The settings that matter

  • container + video_codec + quality - MP4/H.264 is the safe default pair; H.265 and AV1 when you care about file size, ProRes when you're going to edit later. quality is a CRF-style number: lower is larger and better, 18–23 is the normal H.264 range, default 19.
  • fps - 24 by default, which matches H3's native rate. Change it only if you have a reason.
  • filename_prefix - supports subfolders and tokens: %date:yyyyMMdd_hhmmss%, %width%, %height%, %fps%, %frames%, %duration%. The default already timestamps output into a video/ subfolder.
  • audio_mode + audio_codec + audio_bitrate - audio is included when connected; H3 renders have audio, so this is where that track actually lands in the file.
  • save_metadata - ON by default, and the reason to prefer MP4/MOV/WebM over MKV: it embeds the prompt/workflow so ComfyUI's drag-and-drop can rebuild your graph from the video. The tooltip is blunt that current ComfyUI frontends do not import workflow metadata from MKV.
  • pingpong - loops the video forward then backward. Good for a quick loopable preview, obviously wrong for anything you're going to edit. crop_to_audio trims video length to match the audio track.
  • encode_load=gentle - requests fewer ffmpeg threads and reduced process priority, so encoding doesn't starve your other apps. Quality settings are unchanged.

The dimension_policy setting handles odd frame sizes: pad_to_even (default) pads, crop_to_even crops, error refuses. This matters because some video codecs need even dimensions and the sampler's output can, in edge cases, be odd.

Outputs: video_path, frame_count, duration - handy if the next node needs to know what got made.

Installing it

It ships in the pack:

cd ComfyUI/custom_nodes
git clone https://github.com/KursatAs/ComfyUI-H3-Multishot-Advance

Restart ComfyUI. It prefers imageio-ffmpeg, which is a pip dependency of many ComfyUI installs already; if your setup lacks it and has no ffmpeg on PATH, install one or the node will warn and fall back.

Common issues

The big one is picking MKV and then wondering why your workflow doesn't come back on drag-and-drop - that's the metadata import limitation, not a bug. Second, low_ram_master in the sampler needs ffmpeg on PATH specifically (the pack says so), so if you use the streaming master and encoding fails, check PATH before blaming this node. And if the preview looks darker or the loop looks weird, check pingpong - people flip it for previews and forget it's still on for the real save.

Categoryimage/video

Inputs (21)

NameTypeDefaultDescription
source_modeCOMBOautoauto uses video_path when it points to an existing file; otherwise it encodes images.
fpsFLOAT24.000.1–240
filename_prefixSTRINGvideo/multishot_advance_%date:yyyyMMdd_hhmmss%Supports subfolders and tokens: %date:yyyyMMdd_hhmmss%, %width%, %height%, %fps%, %frames%, %duration%.
save_outputBOOLEANtrue
containerCOMBOMP44 options: MP4, MOV, WebM, MKV
video_codecCOMBOH.2647 options: Auto, H.264, H.265 (HEVC), AV1, VP9, ProRes 422, +1
qualityINT190–51CRF/CQ style quality. Lower is larger/better; 18-23 is normal for H.264.
presetCOMBOmedium6 options: ultrafast, veryfast, faster, fast, medium, slow
bit_depthCOMBO8-bit2 options: 8-bit, 10-bit
audio_modeCOMBOinclude_if_connected2 options: include_if_connected, no_audio
audio_codecCOMBOAuto4 options: Auto, AAC, Opus, MP3
audio_bitrateCOMBO192k7 options: 64k, 96k, 128k, 160k, 192k, 256k, +1
crop_to_audioBOOLEANfalse
pingpongBOOLEANfalse
dimension_policyCOMBOpad_to_even3 options: pad_to_even, crop_to_even, error
save_metadataBOOLEANtrueEmbed prompt/workflow tags for ComfyUI drag-and-drop in MP4, MOV, and WebM outputs. Current ComfyUI frontends do not import workflow metadata from MKV.
preview_heightINT320160–900
encode_loadCOMBOnormalnormal keeps current encoding behavior; gentle requests 4 FFmpeg video threads and reduced process priority (Below Normal on Windows, nice +10 on Linux/macOS) without changing codec quality settings.
imagesoptIMAGEConnect H3 master_frames here.
audiooptAUDIOConnect H3 master_audio here.
video_pathoptSTRINGConnect H3 master_path here for low_ram_master or existing videos.

Outputs (3)

NameTypeDescription
video_pathSTRING
frame_countINT
durationFLOAT