Nodes/RunningHub MiniMax H3/RunningHub MiniMax H3 FL2VA Encode (Legacy)
ComfyUI Node

RunningHub MiniMax H3 FL2VA Encode (Legacy)

Turning Keyframes and a Prompt Into H3 Conditioning

By RH-RunningHub·Created 29 days ago·Updated 19 days ago· 1
RunningHub MiniMax H3 FL2VA Encode (Legacy)
  • h3_text_encoder
  • h3_vae_bundle
  • target
  • keyframes
  • conditioning
prompt

If you want MiniMax H3 to animate between frames you give it - a first frame, or a first and last frame, with the model inventing the motion, and the audio, in between - this is the node that assembles the request. It's the FL2VA encode step: it takes your keyframes plus your text prompt, pushes them through H3's Qwen3-VL text encoder and video VAE, and emits the MINIMAX_H3_CONDITIONING that the Dual Sigma Sampler will denoise against.

Inputs

  • h3_text_encoder - from the Qwen3-VL loader. This is what reads your prompt (and, because it's a vision-language model, can fuse the visual context too).
  • h3_vae_bundle - the dual VAE bundle, needed here to encode your keyframe image(s) into H3's video latent space.
  • target - the MINIMAX_H3_TARGET from the FL2VA Target node. This pins resolution, duration and frame count, and it's what keeps conditioning, latent, and sampler all speaking the same shape.
  • keyframes - a MINIMAX_H3_FL_KEYFRAMES object from FL2VAFirstFrameCondition (first, or first+last) or FL2VALastFrameCondition (last only).
  • prompt - your text direction. Multiline, and the place to describe the action, camera, and anything about the scene the frames don't already say.

Output: conditioning - the MINIMAX_H3_CONDITIONING object that feeds the sampler. This is the FL2VA analogue of "CLIP Text Encode" in an SD workflow, just carrying a lot more than text.

The FL2VA mental model

FL2VA = "First/Last Frame to Video with Audio." The first/last-frame conditioning nodes only package the image(s); this encode node is where the actual encoding happens - image into video-latent space, prompt into text embeddings, all fused into one conditioning tensor. Then RHMiniMaxH3FL2VATarget sets the canvas size and duration. The order in a graph is typically:

Load Image → FL2VA First/Last Frame Condition → (keyframes) → FL2VA Target → FL2VA Encode → Sampler

Install

cd ComfyUI/custom_nodes
git clone https://github.com/RH-RunningHub/ComfyUI-RH-MiniMax-H3.git
pip install -r ComfyUI-RH-MiniMax-H3/requirements.txt

Restart, and the ~95 GiB INT8 ConvRot bundle into ComfyUI/models/MiniMax-H3-INT8-CONVROT/ (hf download Gluttony10/MiniMax-H3-INT8-CONVROT --local-dir ./models/MiniMax-H3-INT8-CONVROT, ModelScope in China). ComfyUI 0.27+, CUDA PyTorch. It's a legacy node - the modern RHMiniMaxH3VideoGen wraps FL2VA in one node - but the encode step is exactly what it does internally. License as pack-wide: H3's Community License excludes the US, EU, UK and South Korea from local-weights use.

CategoryRunningHub/MiniMax H3/fl2va

Inputs (5)

NameTypeDefaultDescription
h3_text_encoderMINIMAX_H3_TEXT_ENCODER
h3_vae_bundleMINIMAX_H3_VAE_BUNDLE
targetMINIMAX_H3_TARGET
keyframesMINIMAX_H3_FL_KEYFRAMES
promptSTRING

Outputs (1)

NameTypeDescription
conditioningMINIMAX_H3_CONDITIONING