Nodes/ComfyUI-MiniMax-H3-LongMedia/MiniMax H3 • AV Latent Info
ComfyUI Node

MiniMax H3 • AV Latent Info

A health check for H3's weird two-stream latent

By vizart-vj·Created 14 days ago·Updated 2 days ago· 71
MiniMax H3 • AV Latent Info
  • av_latent
  • report
  • width
  • height
  • frames
  • duration_seconds
  • synchronized

Every ComfyUI user has hit the moment where a latent isn't what you think it is. With MiniMax H3 that confusion is built-in, because its AV latent is a NestedTensor holding two streams at once: a 24-channel video latent and a 32-channel stereo audio latent, packed into one object. You can't eyeball it, and the sampler will happily reject a malformed one with a cryptic error. This node is the health check: feed it any LATENT and it validates it as an H3 AV latent and tells you what's inside.

What it gives you

Connect av_latent and it returns six outputs:

  • report (STRING) - a JSON dump of the full inspection: geometry, whether the audio and video streams are synchronized, and how it's shaped.
  • width, height (INT) - spatial size of the video stream.
  • frames (INT) - the temporal length, on H3's 17×k+5 frame grid.
  • duration_seconds (FLOAT) - total duration.
  • synchronized (BOOLEAN) - the one you actually care about: are video and audio latents the same length, so sampling won't silently desync?

It's an output node, so it sits at the end of a debug chain and shows its text in the UI. Slap it after Pack AV Streams, after a Replace Stream, or right before the Long Media Decode and you'll know in one glance whether the stream surgery worked.

Why it matters

The AV latent is where this pack's whole design lives. Because video and audio share one latent object, every stream operation (encode, pack, replace, merge, continuation) has to keep them length-matched. This node makes that constraint visible instead of letting it bite you at decode time as a "V318 BOUNDARY AUDIT" style sync error. If synchronized is false, whatever you're about to sample is already broken - fix it before burning a denoise pass, not after.

Install

Part of ComfyUI-MiniMax-H3-LongMedia. ComfyUI Manager search "MiniMax-H3-LongMedia", or:

cd ComfyUI/custom_nodes
git clone https://github.com/vizart-vj/ComfyUI-MiniMax-H3-LongMedia

then restart. The node itself needs no model - it's pure inspection - but you'll want the H3 weights around for the workflows it's debugging. (Weights from MiniMaxAI/MiniMax-H3, ~42.5 GB, license excludes US/EU/UK/Korea.)

Troubleshooting

If report errors with something about NestedTensor or channel counts, you're feeding it a plain video latent or a regular ComfyUI latent, not a packed AV latent - check that Pack AV Streams (or the Setup node) actually ran on it. If duration_seconds looks off, remember H3 durations snap to the frame grid, so 5.0 seconds comes back as 4.97 or 5.04. And if you're about to debug a lip-sync workflow, this is your first stop: a false synchronized flag after a Replace Audio is exactly the kind of thing that produces "video fine, audio drifting" - and this node catches it before you waste a run.

CategoryMiniMax H3/LongMedia/Utility

Inputs (1)

NameTypeDefaultDescription
av_latentLATENT

Outputs (6)

NameTypeDescription
reportSTRING
widthINT
heightINT
framesINT
duration_secondsFLOAT
synchronizedBOOLEAN