Nodes/ComfyUI-MiniMaxH3-Easy/MiniMax H3 Easy Selected Video Context
ComfyUI Node

MiniMax H3 Easy Selected Video Context

Feed a finished render back into H3 for a real second pass

By nkxx188·Created 28 days ago·Updated a day ago· 593
MiniMax H3 Easy Selected Video Context
  • h3_bundle
  • selected_video
  • media
  • media_1
  • media_2
  • media_3
  • media_4
  • media_5
  • media_6
  • media_7
  • media_8
  • media_9
  • media_10
  • media_11
  • media_12
  • media_13
  • media_14
  • media_15
  • model
  • h3_context
modeimage
prompt
segment_modewhole_video
segment_cuts
context_length5
continuity_modelatent_guide
advancedfalse
keyframe_rolefirst
ref_image_size1k
reference_mention_modeindex
prompt_optimizer_settingsfalse
prompt_optimizer_scene_guidenone
context_prompt_optimizer_modewhole_sequence
context_prompt_optimizer_concurrency3
prompt_optimizer_resources
prompt_optimizer_marker
prompt_optimizer_prompt_connectedfalse
media_type_1
media_type_2
media_type_3
media_type_4
media_type_5
media_type_6
media_type_7
media_type_8
media_type_9
media_type_10
media_type_11
media_type_12
media_type_13
media_type_14
media_type_15

MiniMax H3 Easy Selected Video Context is the node you reach for when you already have a rendered video and want to run it through H3's refinement machinery - upscaling a 480p first pass, reprocessing it in chunks, or giving a Digital Human render a higher-quality pass. It isn't a generator on its own. It's the bridge that takes a finished VIDEO, slices it into a one- or multi-segment plan, and hands that plan to the same Context Segment pipeline the pack uses for fresh generation, so that Segment Refine's per-segment pixel resize or 3D latent upscale can do its thing over a whole clip without ever holding the full timeline in VRAM.

The mental model that prevents confusion: this node makes an existing candidate video look like a freshly generated segment chain. The comment in the source is blunt - no H3 denoising happens in the first pass here. The candidate is VAE-encoded straight into the latent intermediate a normal segment run would produce, and Segment Refine owns the actual second-pass work. If you were upscaling from a normal Easy render, your chain looks like:

Easy Loader ──→ Selected Video Context ──h3_context──→ Segment Sample ──→ Segment Refine ──→ Segment Decode
     ↑                                   ──model────→       (encodes)          (upscales)
Load Video (candidate)

How it works

Under the hood this node is a subclass of the main MiniMax H3 Easy node, so it inherits all the media and prompt machinery - @ mentions, the optional media port plus numbered media_1media_15 slots with a per-slot type selector, and the prompt optimizer. You give it your loader's h3_bundle and a candidate video. It resamples the candidate to H3's frame rate, works out shot boundaries from your chosen segment_mode (whole video, or cuts by time or by frame), and builds one shot per boundary, carrying the candidate's audio as the source timeline audio. Each shot gets the segment of your prompt plus the media that segment references. It then emits both the model for the chosen generation mode and the h3_context that drives the chain.

The inputs and outputs that matter

  • h3_bundle - from MiniMax H3 Easy Loader. selected_video - any VIDEO source, typically Load Video. The candidate must fit H3's length cap (~15 s); longer inputs raise a clear error.
  • mode - image, reference, or digital_human, mirroring the main node's generation modes.
  • segment_mode and segment_cuts - how to split the candidate: whole_video, or time_cuts / frame_cuts. The cuts string is a comma-separated, strictly increasing list - seconds in time mode, 24 fps frame numbers in frame mode.
  • context_length (5–141) and continuity_mode - the overlap handed between segments. Latent/RGB guide modes want the 5/22/39/56/73 grid; the AV prefix modes use 39/90/141.
  • advanced - reveals keyframe_role (first/last), ref_image_size, reference numbering, and the optimizer toggles.
  • Outputs: model and h3_context.

Installing it

It's part of ComfyUI-MiniMaxH3-Easy:

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

Restart after install. In ComfyUI Manager search the pack and choose the Nightly release, because published versions lag the repo. You need current ComfyUI with the official MiniMax H3 nodes and the H3 weights in ComfyUI/models. For the Latent Upscale path, also drop the matching H3 3D latent upscaler into ComfyUI/models/latent_upscale_models/ - Pixel Resize needs no extra model. Segment Decode at the end requires FFmpeg (the pack prefers imageio-ffmpeg and will also use a system FFmpeg).

Common issues

The biggest conceptual gotcha is expecting this node to denoise. It doesn't - if you wire it straight to a decoder you get your candidate back re-encoded, not improved; the refinement node downstream is where resolution and quality change. Digital Human mode locks in exactly one driving audio track and falls back to ordinary reference mode if you supply none. And note the divide between the two control paths: contexts built here go through Segment Sample, not through the per-Step chain - Sample Setup explicitly rejects selected-video plans. Keep your source video clean before feeding it, because the VAE encode path is the same one H3 itself uses and garbage in propagates straight through.

CategoryMiniMax H3 Easy

Inputs (50)

NameTypeDefaultDescription
h3_bundleMINIMAX_H3_BUNDLE
selected_videoVIDEO
modeCOMBOimage3 options: image, reference, digital_human
promptSTRING
segment_modeCOMBOwhole_video3 options: whole_video, time_cuts, frame_cuts
segment_cutsSTRING
context_lengthINT55–141
continuity_modeCOMBOlatent_guide4 options: latent_guide, guide, soft_av, hard_av
advancedBOOLEANfalse
keyframe_roleCOMBOfirst2 options: first, last
ref_image_sizeCOMBO1k5 options: match, 1k, 1.5k, 2k, original
reference_mention_modeCOMBOindex2 options: filename, index
prompt_optimizer_settingsBOOLEANfalse
prompt_optimizer_scene_guideCOMBOnone9 options: none, 3d_animation_short, brand_promo, coop_game_intro, handdrawn_live, minimalist_product_ad, +3
context_prompt_optimizer_modeCOMBOwhole_sequence2 options: whole_sequence, per_segment
context_prompt_optimizer_concurrencyINT31–20
mediaopt*
prompt_optimizer_resourcesoptSTRING
prompt_optimizer_markeroptSTRING
prompt_optimizer_prompt_connectedoptBOOLEANfalse
media_1opt*
media_type_1optSTRING
media_2opt*
media_type_2optSTRING
media_3opt*
media_type_3optSTRING
media_4opt*
media_type_4optSTRING
media_5opt*
media_type_5optSTRING
media_6opt*
media_type_6optSTRING
media_7opt*
media_type_7optSTRING
media_8opt*
media_type_8optSTRING
media_9opt*
media_type_9optSTRING
media_10opt*
media_type_10optSTRING
media_11opt*
media_type_11optSTRING
media_12opt*
media_type_12optSTRING
media_13opt*
media_type_13optSTRING
media_14opt*
media_type_14optSTRING
media_15opt*
media_type_15optSTRING

Outputs (2)

NameTypeDescription
modelMODEL
h3_contextMINIMAX_H3_CONTEXT