LTXVScheduler_motorway_edition
LTX-Video's noise schedule is weird on purpose — this is its scheduler, inside the Motorway
- MOTORWAY 🚌💨
- MOTORWAY 🚌💨
LTX-Video is the "unbelievably fast" model of the local video scene, and part of why it stays fast is that it doesn't use a generic noise schedule. It uses a shifted, resolution-aware one: the more tokens your latent holds, the more the schedule bends toward the end of sampling. This node is the Motorway-ed clone of ComfyUI's built-in LTXVScheduler, and it's the piece that hands you that schedule when your whole pipeline runs on the pack's Motorway pipe.
What it actually does
The scheduler doesn't sample anything. It computes the list of sigma values - the noise levels the sampler will walk down - and writes them into the Motorway under a key you choose. Later, your sampler node reads that key back out and uses it to drive its steps. That's the whole trick of the custom_sampling flow: schedule in, sampler out, no wires connecting them directly.
The inputs that matter:
INPUT_latent_key- the key in the Motorway holding yourLATENT. Defaultlatent. The scheduler reads the latent's token count (frames × height × width in latent space) to decide how much to shift the schedule.steps- default 20, which is the sane starting point for LTX non-distilled runs.max_shift/base_shift- defaults 2.05 and 0.95. These are the LTX-tuned shift values at 4096 vs 1024 tokens, interpolated between. For a short clip they barely matter; push the clip much longer than 4096 tokens and bumpingmax_shiftis the first dial people turn.stretch(on) andterminal(0.1) - optionally rescale the schedule so the final sigma lands exactly atterminalinstead of hitting zero. Leave them on; that's the intended behavior.OUTPUT_SIGMAS_key- where theSIGMASland. DefaultSIGMAS, and your sampler'sscheduler/sigmasinput should point right back at that key.
The Motorway-ed wrapper
Every _motorway_edition node keeps its widgets (steps, shifts, the booleans) as normal widgets, turns node-typed inputs into INPUT_<name>_key strings, and outputs are keyed writes rather than wires. So the only real input and output here is the MOTORWAY 🚌💨 object - everything else is key names. Under the hood it instantiates the real LTXVScheduler, pulls the latent out by key, runs it, and stores the result. No behavior is lost; the plumbing just moves through the pipe.
Getting it installed
One install covers the whole pack. In ComfyUI Manager search "ComfyUI_agilly1989_motorway", or:
cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway
Then restart ComfyUI. No requirements.txt, no extra Python deps, no model downloads - it's plain Python over ComfyUI's own modules.
Troubleshooting
'MotorwayClass' object has no attribute 'hash_'means the key you typed doesn't exist in the Motorway - check that whatever producedlatentactually ran first, and that the spelling matches (case-sensitive).- Motorway-ed nodes only work inside the pipe: you need a
MotorwayStartupstream and aMotorway AxBramp if you want the sigmas back out in normal node land. - The pack is loudly BETA - the README's own words are "IF THINGS BREAK ITS BECAUSE I BROKE IT."
- One real gotcha: the newest published version of the pack (1.1.7) temporarily disabled the clone-generation code, so on a fresh install you may not see these
_motorway_editionnodes in the menu. They exist in the 1.1.0–1.1.6 builds comfy.icu indexed. If the node is missing, install a version from that era.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — | |
| INPUT_latent_key | STRING | latent | — |
| steps | INT | 201–10000 | — |
| max_shift | FLOAT | 2.050–100 | — |
| base_shift | FLOAT | 0.950–100 | — |
| stretch | BOOLEAN | true | Stretch the sigmas to be in the range [terminal, 1]. |
| terminal | FLOAT | 0.100–0.99 | The terminal value of the sigmas after stretching. |
| OUTPUT_SIGMAS_key | STRING | SIGMAS | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — |