Nodes/ComfyUI-MiniMax-H3-Studio/H3 Studio • Image to Image
ComfyUI Node

H3 Studio • Image to Image

FL2VA's frame-0 anchor, without pretending it's SD img2img

By thaakeno·Created 17 days ago·Updated 5 days ago· 79
H3 Studio • Image to Image
  • clip
  • vae
  • source_image
  • positive
  • h3_latent
  • fitted_source
  • requested_frames
  • image_prompt
  • run_info
edit_instruction
width1344
height768
quality_profilerecommended | 5 frames
source_fidelity0.75
source_fitcrop_center
optimize_for_stilltrue

Here's the trap with H3 image-to-image: it is not SD img2img. There's no denoise slider that decides how much of your source survives. H3's FL2VA path treats your source image as the frame-0 anchor of a video - the model conditions on it as a starting frame and then generates the packet forward. How strongly the source survives is a question of prompt language, not noise. H3StudioImageToImagePrepare is the node that builds that conditioning correctly, and the tooltips practically beg you to remember the distinction.

The required inputs are what you'd expect: the clip (MiniMax H3 Qwen encoder), the vae (used to encode the source frame), the source_image, your edit_instruction, and the width/height canvas (defaults 1344×768). The source gets fitted to the canvas before encoding.

The settings that confuse people

  • source_fidelity (default 0.75) - "controls how strongly the still prompt asks H3 to preserve identity, pose, composition and geometry." The tooltip is unambiguous: this is NOT a denoise slider and does not change sampling. It steers the wording H3 receives. If you crank it, the generated prompt gets more preservation language, not more denoising.
  • source_fit - crop_center (default), contain_pad, or stretch: how the source is fitted to the canvas before VAE encoding. For a 16:9 canvas from a square source, crop_center trims, contain_pad letterboxes, stretch distorts.
  • quality_profile - the temporal ladder: experimental 1-frame image VAE, recommended 5 frames, extended 9, high 13, maximum 20 (slow). The tooltip adds a genuinely useful warning: at 20 frames, FL2VA may retain source-like traits too strongly - more context isn't automatically better for an edit.
  • optimize_for_still (default on) - wraps the prompt with locked-camera still-image wording and source-preservation language. Sampling settings are untouched.

Outputs

positive (CONDITIONING) and h3_latent (LATENT) feed the sampler; fitted_source shows the anchored source; requested_frames carries the temporal count; image_prompt and run_info show you what prompt actually went in. Read image_prompt once - seeing how your edit instruction got rewritten with preservation language is the fastest way to understand why a result drifted or stuck too close to the source.

Where it sits

This is the "expert graph" version of the I2I path - the Director and the Combined Prepare node can reach the same conditioning, but this node is the focused, single-mode variant for people wiring I2I by hand. If your edits come out too loose, raise source_fidelity and state the immutable traits explicitly in the instruction; if it clings to the source, lower it. Because it's semantic regeneration rather than pixel-locked compositing, exact geometry is never guaranteed - work the prompt, not the sliders.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/thaakeno/ComfyUI-MiniMax-H3-Studio.git
cd ComfyUI-MiniMax-H3-Studio
python -m pip install -r requirements.txt

Restart and hard-refresh the frontend. No extra dependencies beyond the pack and the H3 models it wraps.

CategoryH3 Studio/Runtime

Inputs (10)

NameTypeDefaultDescription
clipCLIPMiniMax H3 Qwen text/vision encoder.
vaeVAEMiniMax H3 video VAE used to encode the source frame.
source_imageIMAGESource image used as FL2VA's frame-0 anchor.
edit_instructionSTRINGDescribe the desired final image and the changes to apply to the source.
widthINT134432–16384Generation canvas width; the source is fitted to this canvas before encoding.
heightINT76832–16384Generation canvas height; the source is fitted to this canvas before encoding.
quality_profileCOMBOrecommended | 5 frames5 frames is the recommended edit profile. With 20 frames, FL2VA may retain source-like transition frames near the start. Exact Frame Decode now preserves the complete selected profile; Single Image Output scores it and normally emits one still.
source_fidelityFLOAT0.750–1Controls how strongly the still prompt asks H3 to preserve identity, pose, composition and geometry. This is NOT diffusion denoise strength and does not alter the sigma schedule.
source_fitCOMBOcrop_centerHow the source is fitted to the generation canvas before VAE encoding.
optimize_for_stillBOOLEANtrueAdds a locked-camera still-image prompt wrapper and source-preservation language. Sampling settings are unchanged.

Outputs (6)

NameTypeDescription
positiveCONDITIONINGPositive FL2VA image-to-image conditioning for the sampler's positive input.
h3_latentLATENTPacked H3 audio/video latent with the fitted source encoded as frame-0 anchor.
fitted_sourceIMAGESource image after the selected crop, pad or stretch operation.
requested_framesINTNumber of image frames that Exact Frame Decode should preserve and decode.
image_promptSTRINGFinal edit prompt after optional still-image and source-preservation optimization.
run_infoSTRINGTemporal packet, source-fit, checkpoint expectations and recommended selection strategy.