π΄ LTX Reference Conditioning
Your LTX2 reference image, injected as tokens instead of just frame 0
- model
- vae
- image
- target_latent
- model
Stock LTX2 i2v conditions on the reference at frame 0 and hopes for the best after that. LTX Reference Conditioning takes a different route: it encodes your image through the LTX2 video VAE and attaches the resulting latent to the model as reference tokens, prepended to the video token sequence inside the transformer. Self-attention then sees that reference on every frame of the generation, which buys you uniform identity influence instead of a first-frame handshake that fades.
It's the second half of a pair - LTX Reference Enable must be upstream to patch the model, then this node hands it the reference. Works on any LTX2.3 checkpoint, including merged variants, and composes with your existing i2v frame-0 conditioning: same model, different intervention point. LTX2's famous i2v face drift and mid-clip character changes are exactly what this is aimed at.
The inputs that matter
model,vae,image- required. The image is VAE-encoded into a reference latent.target_latent- the one that saves you a headache. Wire in the same LATENT you're sending to your sampler. The node then resizes the image in pixel space to match the target latent's spatial dims before encoding, guaranteeing the reference and target have matching patches-per-frame. Skip it and a resolution mismatch is a guaranteed tensor error.strength(0β2, default 1) - scales the reference latent magnitude. 1.0 is native VAE output. If you see first-frame distortion, drop to 0.6β0.8. Set it to 0 and the node bypasses and clears any prior reference state - handy for reusing a branch.position_mode-reference(default) puts the reference tokens so they overlap the target's first frame temporally, giving uniform influence across all frames.prefix_continuousplaces them before the target, which is essentially standard i2v prior-context conditioning. Start withreference.
Output is a single MODEL, wired to your sampler.
How it works
The latent is stashed in model_options.transformer_options (plus an attribute side-channel on the diffusion model), and the Enable patches pick it up during sampling: reference tokens go through the same patchifier with the same 3D RoPE positions as the target tokens, so the attention mechanism treats them as just more sequence positions to attend to. The result is identity steering that doesn't evaporate by frame 30.
Installing it
Part of the TenStrip 10S pack:
cd ComfyUI/custom_nodes
git clone https://github.com/TenStrip/10S-Comfy-nodes.git 10S_Nodes
or via ComfyUI Manager β search "10S". Restart. No extra dependencies.
Gotchas
The README's suggested starting point: i2v strength 0.4 combined with reference strength 1.0 keeps identity strong without compositional divergence. And if the reference is fighting your prompt, remember these are different knobs than CFG - lower strength before you start wrestling the prompt text. For a multi-frame reference that captures motion or temporal style, there's a sibling node, LTX Reference Sequence, that takes a whole frame window instead of one still.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | β | |
| vae | VAE | β | |
| image | IMAGE | β | |
| target_latentopt | LATENT | Optional. Wire the same LATENT that goes into your sampler. The image will be resized in pixel space to match this latent's spatial dimensions before VAE encoding, guaranteeing memory and target have matching patches-per-frame. Without this, you'll get a tensor mismatch error if your image and target latent don't match exactly. | |
| strengthopt | FLOAT | 1.000β2 | Scales the reference latent magnitude. 1.0 = native VAE output. <1.0 reduces influence; >1.0 boosts (may distort). Set to 0.0 to bypass completely and clear any prior reference state. |
| position_modeopt | COMBO | reference | How reference tokens are positioned in the attention sequence. 'reference' (default): tokens overlap target's first frame temporally β uniform identity influence across all generated frames. 'prefix_continuous': tokens placed before target temporally β equivalent to standard i2v prior-context conditioning. |
| verboseopt | BOOLEAN | false | Print detailed per-call info to the console. Useful for debugging. Disable for normal use. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| model | MODEL | β |