Nodes/comfyui-minimax-h3-audio-T8/H3 Continuation · External HIGH EAV (T8 EXP)
ComfyUI Node

H3 Continuation · External HIGH EAV (T8 EXP)

Applying the video-enhancement pass to your continuation's HIGH phase only

By T8mars·Created 2 months ago·Updated about 7 hours ago· 1,158
H3 Continuation · External HIGH EAV (T8 EXP)
  • model
  • prepared_phase
  • high_restart
  • eav_config
  • model

EAV - the Enhance-A-Video attention tweak - is the most reliably oversold knob in this whole ecosystem. It's cheap, it changes the picture, and whether it improves anything depends on your material, your step count and your luck.

The continuation family handles it more carefully than most. There are separate LOW and HIGH apply nodes, so you can put the effect where it actually acts on the finished pixels instead of smearing it across both phases and never knowing which one did what. H3 Continuation · External HIGH EAV is the HIGH one: it takes a Stage EAV config and binds it only to this HIGH's typed restart and original clean-source mask.

Why HIGH only

In this continuation contract the LOW phase generates cheap motion at reduced resolution - the pack reuses the original native motion builder and is careful not to resize LOW guides twice. The HIGH phase finishes at full resolution with the accepted completed-prefix motion contract held in place. Effects that reshape attention output have much more to work with in HIGH, and confining them there keeps the accepted prefix semantics intact.

That's also what the node description means by "no LOW dependency": this apply doesn't care what LOW did, doesn't re-derive motion, doesn't touch the frozen boundary. It's a one-phase wrapper.

Inputs and output

Four required inputs: model (the raw HIGH model), prepared_phase (the low/high phase that ONE Phase Conditions produced for this phase), high_restart (the typed HIGH restart from the handoff stage), and eav_config - a T8_STAGE_EAV_CONFIG from the pack's H3 Stage EAV · External Config node.

One output: model. The EAV-bound model. Wire it into the HIGH sampling stage and nowhere else. If you send that model anywhere upstream, don't be surprised when identity checks fire; these typed handoffs exist to keep you honest about which execution you're affecting.

The config node's defaults are the important part: mode defaults to report_only, which measures and changes nothing. apply_exp applies. tau defaults to 4.0, the progress window defaults to 0.15–0.90 of video progress, and there's a hard gain ceiling at 1.5. The pack's validation runs treat observed gains as measurements, not as proof of a beneficial effect - and a measured maximum gain near 1.0 means "applied, changed essentially nothing", which is a real result worth accepting rather than re-running until the number flatters you.

Also note the sibling node: H3 Continuation · External LOW EAV exists for the other phase. If you apply to both, you have two variables moving and no way to attribute the difference.

Install

Manager → search MiniMax H3 Audio T8, or:

cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8.git minimax-h3-audio-T8

Fully restart ComfyUI, then refresh the tab - these nodes don't appear until a real restart, and a queue refresh won't do it. You need a recent ComfyUI with native H3 support; Registry and GitHub releases move on their own schedules, so clone from GitHub if Manager's version is behind. No extra pip dependencies for the base and EXP nodes: requirements.txt is empty so an install can never replace ComfyUI's Torch/CUDA. Weights are separate - main model, Qwen text encoder, video VAE and audio VAE.

Where it goes wrong

Expecting to see the effect. Check eav_config's mode first. report_only is the default in the shipped example graphs, and it will not change a single pixel.

Applying both LOW and HIGH at once. You've now got two effects and one output. The pack's own advice is one variable at a time, seed frozen.

Reusing a restart from another phase. high_restart is typed and bound to this HIGH's plan and mask. Swapping in a hand-built latent gets refused.

Confusing this with the chunked v5 EAV node. They're different contracts: v5's applies per refine window, this one per continuation phase. Same family of effect, different bookkeeping - and the audit trail is not interchangeable.

Stale duplicate installs. If sockets don't match the example workflow, look for a second copy of the pack in custom_nodes. Old copies serve old schemas; rename with a .disabled suffix (a leading underscore does not disable a pack), restart, and verify python_module in /object_info.

CategoryT8/MiniMax H3/Modular Sampling/Continuation Experimental

Inputs (4)

NameTypeDefaultDescription
modelMODEL—
prepared_phaseT8_CONTINUATION_PREPARED_PHASE—
high_restartT8_PROGRESSIVE_HIGH_RESTART—
eav_configT8_STAGE_EAV_CONFIG—

Outputs (1)

NameTypeDescription
modelMODEL—