Nodes/ComfyUI-MiniMaxH3-Easy/MiniMax H3 Easy Output
ComfyUI Node

MiniMax H3 Easy Output

The node that turns H3 context back into wires ComfyUI actually understands

By nkxx188·Created 20 days ago·Updated a day ago· 548
MiniMax H3 Easy Output
  • h3_context
  • positive
  • latent
  • video_vae
  • audio_vae
  • fps

Why a "context" needs unpacking at all

The MiniMax H3 Easy node is deliberately compact: it outputs just model and h3_context. The context is a bundle holding everything else the graph needs - the conditioning, the latent, both VAEs, and the frame rate - all tucked into one custom type. That's tidy until you remember the rest of ComfyUI doesn't speak MINIMAX_H3_CONTEXT. Your KSampler wants CONDITIONING and LATENT, your video save node wants a VAE and an FPS, and none of them will touch a bundle. MiniMaxH3EasyOutput is the adapter that unpacks it back into the standard wires everyone else expects.

It's the node you'll always have downstream of the main Easy node, and it's dead simple: one input, five outputs, no settings.

Inputs

  • h3_context - connect the h3_context output from MiniMax H3 Easy. That's it. If you feed it anything else, it errors with a pointed "Connect the H3 Context output from a MiniMax H3 Easy node" rather than silently misbehaving.

Outputs

  • positive (CONDITIONING) - the encoded prompt conditioning. This goes into your sampler's guider (BasicGuider in the included workflow).
  • latent (LATENT) - the empty AV latent the sampler denoises. H3's video latent carries the audio track alongside the frames, which is why it looks unusual next to SD-style 4-channel latents.
  • video_vae (VAE) - the H3 video VAE, used when decoding frames or when a second pass needs to re-encode.
  • audio_vae (VAE) - the H3 audio VAE. It comes out separately so audio-aware nodes (and the included pass-2 workflow's latent split) can use it directly.
  • fps (FLOAT) - the frame rate you set on the main node, forwarded as a plain number for the video save node.

In the stock workflow the wiring is: MiniMaxH3EasyMiniMaxH3EasyOutput, then positiveBasicGuider, latentSamplerCustomAdvanced, and video_vae + fps → the video saver. If you're using the second-pass refinement graph, latent and the VAEs are also what feed the latent split and re-encode steps upstream of the second sampler.

Install

Same as the rest of the pack:

cd ComfyUI/custom_nodes
git clone https://github.com/nkxx188/ComfyUI-MiniMaxH3-Easy

or search "MiniMax H3 Easy" in ComfyUI Manager, then restart ComfyUI. It has no extra Python dependencies worth mentioning - the models you already downloaded for the loader are the ones it passes through.

Things worth knowing

This node does no generation and holds no state; it's pure plumbing, and that's exactly the point. Because the main node keeps its outputs bundled, you can't accidentally wire the wrong thing to the sampler - the type mismatch stops you. The one trap is conceptual: h3_context is a snapshot. If you change something on the main node (resolution, mode, prompt) and want the downstream graph to match, the output node re-fires on the next run like any cached node. Nothing to clean, nothing to reset.

One genuine footgun that isn't this node's fault: it hands you an fps value, but H3 frames are aligned to 5 + 17n counts, so fps is the requested rate, not an exact frame-count guarantee. Save nodes that compute duration from frames / fps will show the slight rounding - it's the model's constraint, not a broken wire.

CategoryMiniMax H3 Easy

Inputs (1)

NameTypeDefaultDescription
h3_contextMINIMAX_H3_CONTEXT

Outputs (5)

NameTypeDescription
positiveCONDITIONING
latentLATENT
video_vaeVAE
audio_vaeVAE
fpsFLOAT