MiniMax H3 FLF Legacy Parity Conditioning
FL2VA conditioning with the planned keyframes kept authoritative
- model
- clip
- video_vae
- audio_vae
- cine_linx
- bridge_frame
- first_frame_override
- last_frame_override
- ref_image_1
- ref_image_2
- ref_image_3
- ref_image_4
- ref_video
- ref_video_audio
- ref_audio
- motion_context
- model
- positive
- latent
- first_frame
- planned_last_frame
- reference_manifest_json
- prompt
- current_segment
- total_segments
- trim_head_frames
- report
- motion_state
First-and-last-frame generation lives or dies by one decision: when segment B starts, does it start from the last frame A actually produced, or from the keyframe the editor planned for that moment? This node is the faction that trusts the editor. The FLF Legacy Parity Conditioning builds the conditioning for a segment using the timeline's explicit shared keyframes - A→B is followed by B→C - and it deliberately ignores any "bridge the real output" flag, because a sampled tail is not the same object as an authored keyframe.
What it is
It's a subclass of IAMCCS_MiniMaxH3AtomicConditioningBackend, kept as a stable alias for "legacy parity" FL2VA workflows. Same behavior as the atomic backend, same contract, but its class name is preserved so older Director-era workflows keep loading. If you see this node in a graph you inherited, you can treat it as the atomic conditioning backend.
What it does
Given the plan and a segment index, it figures out the effective task (t2va / i2va / fl2va / ref2va), sizes the latent to the plan's resolution, rounds the frame count up to the H3-friendly 17n+5 boundary, and then builds the matching conditioning. For fl2va it requires both the opening and the planned final keyframe - which it resolves from the plan's first/last images, or from ref_image_1 / ref_image_2, or from your overrides. For ref2va it assembles up to four reference images plus reference audio/video into a manifest, and for the native AV continuity path it preps a pinned context from the previous render.
Inputs worth knowing
The required set is the standard four (model, clip, video_vae, audio_vae) plus cine_linx and segment_index. The optional list is generous: bridge_frame, render_id, first_frame_override, last_frame_override, four ref_image_* slots, ref_video, ref_video_audio, ref_audio, prompt_override, and motion_context - enough to inject nearly any reference material without editing the plan.
Outputs
model (pass-through), positive (conditioning), latent, first_frame and planned_last_frame, a reference_manifest_json describing the reference media that were actually used, prompt, segment metadata (current_segment, total_segments, trim_head_frames), report, and - importantly - motion_state (an IAMCCS_H3_MOTION_CONTEXT), which the generation backend consumes so the continuity handoff is owned by the conditioning stage.
Installing it
Part of IAMCCS-nodes: ComfyUI Manager (search "IAMCCS") or git clone https://github.com/IAMCCS/IAMCCS-nodes.git into custom_nodes, restart. Requires ComfyUI's native MiniMax H3 modules.
Gotchas
The FL2VA keyframe contract is enforced hard: no opening and final images, no fl2va run - the node raises rather than quietly generating text-to-video. That's the parity philosophy in action. If you want the actual rendered tail as the opening instead of the planned keyframe, this is the wrong node - that's the native AV continuity path (via motion_context), which this node explicitly refuses to fake.
Inputs (19)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| clip | CLIP | — | |
| video_vae | VAE | — | |
| audio_vae | VAE | — | |
| cine_linx | IAMCCS_SUPERNODE_LINX | — | |
| segment_index | INT | 00–1000000 | — |
| bridge_frameopt | IMAGE | — | |
| render_idopt | STRING | — | |
| first_frame_overrideopt | IMAGE | — | |
| last_frame_overrideopt | IMAGE | — | |
| ref_image_1opt | IMAGE | — | |
| ref_image_2opt | IMAGE | — | |
| ref_image_3opt | IMAGE | — | |
| ref_image_4opt | IMAGE | — | |
| ref_videoopt | IMAGE | — | |
| ref_video_audioopt | AUDIO | — | |
| ref_audioopt | AUDIO | — | |
| prompt_overrideopt | STRING | — | |
| motion_contextopt | IAMCCS_H3_MOTION_CONTEXT | — |
Outputs (12)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| positive | CONDITIONING | — |
| latent | LATENT | — |
| first_frame | IMAGE | — |
| planned_last_frame | IMAGE | — |
| reference_manifest_json | STRING | — |
| prompt | STRING | — |
| current_segment | INT | — |
| total_segments | INT | — |
| trim_head_frames | INT | — |
| report | STRING | — |
| motion_state | IAMCCS_H3_MOTION_CONTEXT | — |