Nodes/Nynxz H3/H3 Studio Clip
ComfyUI Node

H3 Studio Clip

The Node That Makes Two Scenes Look Like One Take

By Nynxz·Created 2 months ago·Updated about 22 hours ago· 6
H3 Studio Clip
  • render
  • images
  • audio
  • latent
  • video
◄keeptrue►
◄reusetrue►

Continuation in H3 Studio works by anchoring the previous scene's last frames (and its sound) at frame 0 of the next one, then having H3 regenerate over them. Which means the new scene's head is a re-draw of frames you already have. H3 Studio Clip is the node that cuts that head off, so scene two starts clean where scene one ended.

It's also the loop's hinge, and, quietly, the thing that stops you re-rendering half your film.

Inputs

render comes from H3 Studio and is what tells the node how much head to trim - the studio knows what this scene was anchored to.

images is the scene's decoded frames from your VAE decode. audio is optional: the scene's decoded audio.

latent is optional and a nice bit of engineering: the scene's sampled latent. If you wire it, the next scene continues from those last tokens directly, without decoding them and re-encoding them. Slightly less work, slightly less error.

Then two booleans with real consequences:

  • keep (default on) - saves the clip to output/h3studio, so the studio's Render view can play it and it survives a restart.
  • reuse (default on) - when this scene's saved clip was rendered from the same scene, models, sampler and seed, play that clip instead of rendering again. Needs keep. Turn it off to force a re-render.

There's a mechanism detail worth appreciating here. Those three inputs are declared lazy, and the node's check_lazy_status returns an empty list when the clip can be reused. That means the upstream decode and, crucially, the sampler itself never execute. It's not "render and throw it away" - the work genuinely doesn't happen.

Output

One output: video, and the node is marked as an output node, so a loop that ends at End Loop still has something to save. The film saves itself after a full render.

In a loop, it wires two ways at once - next_iteration_value on End Loop (so the next scene continues from this clip) and output_value with accumulate on (every scene, for Concatenate Video or H3 Studio Join).

Install

Same pack, same three lines:

cd ComfyUI/custom_nodes
git clone https://github.com/Nynxz/ComfyUI-NynxzH3

Restart, ComfyUI 0.30.0+, H3 models in place. Hand-cloning needs pnpm install && pnpm build for the editor frontend; the Manager package ships it built.

Where people get stuck

"I changed one scene and the whole film re-rendered." Check reuse and keep are both on. With reuse off, or keep off (which makes reuse impossible), every scene samples every pass.

"My film re-rendered even though nothing changed." The fingerprint covers the compiled scene, its media files, the clip it continued from, and the model and sampler chain. Change the sampler or swap a LoRA and everything downstream is legitimately different. The per-scene state marks in the editor (✓ / ⟳) will tell you which one the pack thinks is stale.

"Scene two starts with a repeated beat." That's the continuation head - the frames H3 regenerated over the anchor. Either this node isn't in the chain, or the scene isn't actually set to Continue in the studio.

"A partial render errors about a skipped scene's sampler." You're feeding a per-scene Save Video or preview from the decoded frames on End Loop's terminations. Feed it from this node's video - a skipped scene plays its saved clip there.

CategoryNynxz/H3/Studio

Inputs (6)

NameTypeDefaultDescription
renderNYNXZ_H3_STUDIO_RENDERFrom H3 Studio — says how much head to cut.
imagesIMAGEThe scene's decoded frames.
keepBOOLEANtrueSave the clip to output/h3studio, so the studio's Render view can play it (and it's still there after a restart).
reuseBOOLEANtrueWhen this scene's saved clip was rendered from the same scene, models, sampler and seed, play that clip instead of rendering it again. Needs keep. Turn off to re-render (or change the seed).
audiooptAUDIOThe scene's decoded audio.
latentoptLATENTThe scene's sampled latent. The next scene continues from its last tokens directly, without decoding and re-encoding them.

Outputs (1)

NameTypeDescription
videoVIDEO—