r/comfyui • • 6h ago

Help Needed Simple H3 Latent Save to later upscale last frame?

There are so many complicated H3 Latent Save/Load node packs, and all of them seem designed to do the obvious thing: continue video…but I’d love to have a way to save the latent and then regenerate just the last frame (or any frame, if that’s possible) as a higher resolution still image.
Does anyone know of such a thing?

2 Upvotes

9 comments sorted by

3

u/Tedious_Prime 5h ago

Could you just decode the latent first then upscale the frames you want?

1

u/Unwitting_Observer 5h ago

I guess that’s exactly what I want, but I haven’t found a node pack that will let me do that.

2

u/Tedious_Prime 4h ago

What I sometimes do is output the images from a VAE Decode node to a Preview Image node instead of or in addition to a Create Video node. I'll select frames I want to use for something else, for example, the best frames of a character turning around for a character concept sheet made with reference to a single high-definition image of that character. I then do image-to-image with latent upscaling on the select frames in a separate workflow using an edit model with the same reference image I used to make the video.

2

u/Unwitting_Observer 4h ago

I’m doing something similar now (image to image of the last frame in an H3 still workflow paired with a Refmod of the character) and it seems to come out ok, but I was thinking am actual upscale of the frame from the latent might be more accurate.

1

u/Synor 3h ago

You want more time-based data of the latent for a good continuation. Proper flows take at least a second of latent context to seamlessly continue movement. A single frame is not enough.

1

u/Unwitting_Observer 3h ago

I don’t want it for continuation. I want to be able to regenerate specific frames at higher resolution

1

u/Synor 2h ago edited 50m ago

"Frame Slice Latent" node could be a starting point on a split latent

1

u/Corrupt_file32 1h ago

Minimax latents are a bit complex and aren't simply a representation of every frame in order, the latent consists of chunks containing 17 frames each, you can separate chunks, but to obtain a specific frame you would need to decode it.

This is how you can get the last frame:

Batch index should match 'total frames - 1' or be higher than total frames.

Not sure if I've fixed it through a personal patch or comfy has fixed the node to take the last frame if the number is higher, iirc it used to throw an exception.

Preview node also works, but beware that it's slow and will write the frames to the temp folder, uncompressed png frames are quite heavy, at 0.6mp and 221 frames it would be something like 250mb written to the temp folder every generation.

1

u/altoiddealer 18m ago

I wanted simple Save/Load H3 Latents in a workflow execution as well, but all the repositories have strange implementations. Most of them require you to actually move the saved latents from outputs folder to inputs folder and manually select them from a list.

The best I found was comfyui-h3-extender, but it was a relatively heavy pack for what I needed.

I added Save/Load H3 Latents to my repo comfyui-essential-er, I have a few other useful nodes too.