Shot Video Output
The little tag node that makes multi-shot video editing sane
- video
- video
Here's the workflow that made Mickmumpitz's long-form video builds click: you split a movie into "SHOT 1", "SHOT 2", "SHOT 3" groups, generate each as its own 81-frame clip, and then want to re-render just shot 3 without re-running shots 1 and 2. That only works if the graph knows which video is which shot. Shot Video Output is the tag that tells it.
It's a passthrough node with a job description you could miss at a glance: video in, same video out. The actual work happens in the shot_number and enabled widgets, which don't touch the pixels at all - they're read by the pack's prompt handler at submit time and used to wire your shots together.
How it works
The node is deliberately dumb - it just passes video through untouched. What matters is that it's marked as an output node, so it previews the shot, and that its shot_number gets collected by the Shot system's prompt handler. On every run, the handler scans the graph for Shot Video Outputs, sorts them by shot_number, and auto-connects each one's output to the matching hidden slot on a Shot Assembler.
The trick that makes single-shot regeneration work: because those hidden dependency slots are filled for every shot on every run - cached outputs included - the assembler always receives the complete set of videos. Re-render shot 3 and shot 4, shots 1 and 2 get pulled from cache, and you still get a full assembled video out the other end.
The inputs that matter
- video - the
VIDEOyou want to tag. - shot_number - default 1, range 1–99. This is the playback position, so shot 1 plays first regardless of where the node sits on the canvas.
- enabled - default true. Flip this off and the shot is dropped from the assembly without deleting the group. Handy for A/B-ing a shot or temporarily cutting it.
Output
video - the same video it got, useful mainly for previewing and for the assembler to grab.
Install
It ships in Mickmumpitz-Nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/mickmumpitz/ComfyUI-Mickmumpitz-Nodes
then restart - or search "Mickmumpitz" in ComfyUI Manager. No models needed; deps are just numpy/Pillow/opencv-python.
Where people get confused
Keep shot numbers unique - if two shots share a number the handler sorts by (shot_number, node_id), so the tiebreak is essentially arbitrary and your order will surprise you. And don't expect this node to change the video; if nothing visibly happens, that's correct behavior. It's a tag and a preview. And it needs a recent ComfyUI, because the VIDEO type is the newer native video format - no video socket means no tag.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| video | VIDEO | — | |
| shot_number | INT | 11–99 | — |
| enabledopt | BOOLEAN | true | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |