ποΈ LTX LoRA Stack (AV)
The AV-split LTX2 LoRA stack
- model
- MODEL
If you've ever stacked three LoRAs on an LTX2 workflow, you know the pain this node kills: a sideways chain of LoRA Loader Advanced nodes, each a separate step, and if one is out of order the whole thing's a mess. LTX LoRA Stack (AV) is one node that holds up to twelve LoRAs at once, and it throws in a trick the loaders can't do - separate strength per LoRA for the audio half of the model versus the video half.
That AV split is the reason this node exists. LTX2 is a dual-stream DiT: video tokens and audio tokens flow through the same transformer but hit different block groups (audio_attn, audio_ff, audio_adaln on one side, the main transformer_blocks on the other). A LoRA can touch both, or mostly one. The stack lets you say "this style LoRA hits video at 0.8 but I want zero audio impact" without training anything.
How it works
Each LoRA you load is split into two buckets by a simple rule: any model key containing the substring audio lands in the audio bucket, everything else in the video bucket. That rule catches more than you'd think - audio_embeddings_connector, audio_to_video_attn, and video_to_audio_attn all contain "audio", so they're correctly treated as audio-side layers even though one of them is cross-attention from video.
Per layer, the effective strength is:
effective = strength Γ (audio_weight for audio layers
video_weight for video layers)
Each slot gives you three knobs: strength (the overall multiplier, β10 to 10), audio_weight, and video_weight. Set a side to 0 and that LoRA's influence on that side disappears. The node clones your ModelPatcher before applying, so the upstream model isn't mutated - standard Comfy good manners.
The inputs that matter
model- the MODEL from your checkpoint loader.num_loras- the single source of truth for how many slots are active. This is the one beginners get burned by: slots beyondnum_lorasare ignored entirely, no matter what's in them. Bump it as you add LoRAs.lora_1β¦lora_12- dropdowns populated from yourmodels/lorasfolder. Set one to "None" (or its strength to 0) to disable that slot.strength_N/audio_weight_N/video_weight_N- the three per-slot multipliers above.
Output is a single MODEL, wired straight into your sampler. The description on the socket couldn't be plainer: you're replacing a chain of loaders.
Installing it
This is part of the 10S-Comfy-nodes pack (TenStrip). Easiest is ComfyUI Manager - search "10S" and install. Or by hand:
cd ComfyUI/custom_nodes
git clone https://github.com/TenStrip/10S-Comfy-nodes.git 10S_Nodes
Restart ComfyUI and the nodes appear under 10S Nodes/. There are no extra pip dependencies - the README is explicit that everything this pack needs already ships with ComfyUI. Update with git pull in that folder.
Where people get burned
The num_loras trap above is the big one - a workflow file can carry stale values in slots you think are off. Also remember this pack is LTX2-specific: the LoRA key mapping assumes the LTX-AV class structure, so don't expect it to stack SDXL LoRAs. And because LTX2 is prompt-sensitive (the community's standing advice is long, specific prompts), a big stack of style LoRAs will amplify each other fast - start with strength 0.6β0.8 per LoRA and work up rather than slamming everything to 1.0.
Inputs (50)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | β | |
| num_loras | INT | 11β12 | How many LoRA slots to actually use. Only the first N slots (1-12) are applied; the rest are ignored entirely regardless of their values. Bump this up as you add more LoRAs to your stack. |
| lora_1opt | COMBO | None | LoRA file for slot 1. Set to 'None' to disable this slot. |
| strength_1opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_1opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_1opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_2opt | COMBO | None | LoRA file for slot 2. Set to 'None' to disable this slot. |
| strength_2opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_2opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_2opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_3opt | COMBO | None | LoRA file for slot 3. Set to 'None' to disable this slot. |
| strength_3opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_3opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_3opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_4opt | COMBO | None | LoRA file for slot 4. Set to 'None' to disable this slot. |
| strength_4opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_4opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_4opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_5opt | COMBO | None | LoRA file for slot 5. Set to 'None' to disable this slot. |
| strength_5opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_5opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_5opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_6opt | COMBO | None | LoRA file for slot 6. Set to 'None' to disable this slot. |
| strength_6opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_6opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_6opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_7opt | COMBO | None | LoRA file for slot 7. Set to 'None' to disable this slot. |
| strength_7opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_7opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_7opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_8opt | COMBO | None | LoRA file for slot 8. Set to 'None' to disable this slot. |
| strength_8opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_8opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_8opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_9opt | COMBO | None | LoRA file for slot 9. Set to 'None' to disable this slot. |
| strength_9opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_9opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_9opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_10opt | COMBO | None | LoRA file for slot 10. Set to 'None' to disable this slot. |
| strength_10opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_10opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_10opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_11opt | COMBO | None | LoRA file for slot 11. Set to 'None' to disable this slot. |
| strength_11opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_11opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_11opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
| lora_12opt | COMBO | None | LoRA file for slot 12. Set to 'None' to disable this slot. |
| strength_12opt | FLOAT | 1.00-10β10 | Overall LoRA strength multiplier. Combined with audio_weight and video_weight per layer. |
| audio_weight_12opt | FLOAT | 1.00-10β10 | Audio-block scale. Multiplied by strength to produce final scale for audio layers: audio_attn, audio_ff, audio_adaln, audio_embeddings_connector, and both AβV cross-attention pairs. Set to 0 to disable audio-side adjustments from this LoRA. |
| video_weight_12opt | FLOAT | 1.00-10β10 | Video-block scale. Multiplied by strength to produce final scale for video layers: main DiT transformer_blocks (attn1/attn2/ff), video_embeddings_connector, and video adaLN modulation. Set to 0 to disable video-side adjustments from this LoRA. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | β |