LTXV Time-Gated LoRA (Scheduled)
The node that puts a LoRA exactly where you want it in time
- model
- video_latent
- segment_data
- relay_timing
- model
- video_latent
- schedule_info
- data
LTXV Time-Gated LoRA (Scheduled) is the heart of this pack - the whole reason it exists. It applies a visual LTX 2.3 LoRA to one selected segment of your video timeline, with explicit control over how the effect enters, holds, and leaves, all synchronized to the same prompt schedule as everything else in the Temporal Director. Jinx138 built the pack for exactly this: a claymation look in the middle third of a continuous I2V run, realistic before and after, no clip stitching.
Stack a few of these and each one can target a different segment - LoRA A owns segment 1, LoRA B owns segment 3 - while every transition still lines up with the prompt changes from Schedule Sync. If you've fought the alternative (separate renders, stitch, pray the seams don't show), this is the relief valve.
How it works
The node builds a per-frame envelope from three strength levels - strength_before, strength_during, strength_after - then converts that frame curve down to the latent's compressed timeline (LTX 2.3 packs 8 frames per latent step). It loads your LoRA, finds its linear layers, and skips audio layers by design - this is visual gating only, which the README is upfront about. Then it wraps the model with a runtime patch that scales the LoRA by the envelope at each step. Nothing is rewritten to disk: same LoRA file, applied at different strengths at different moments.
The curve controls deserve a minute. ramp_mode = q_curve gives you independent q_in and q_out shaping, plus q_in_shift/q_out_shift that slide the transition phase between segment midpoints. The tooltip spells out the most useful move: q_in_shift = +1 with q_out_shift = -1 gives a centered LoRA peak - the effect blooms in the middle of the segment and fades before the edge, no plateau. First and last segments use symmetric virtual pre-roll/post-roll regions so edge behavior matches internal boundaries.
The inputs that matter
target_segment- which segment (1–4) this LoRA owns. Start here.strength_before/strength_during/strength_after- the three levels. For a "middle third only" look: 0 / 1 / 0. Don't assume strength caps at 1.0 - the author's own testing found useful values outside the familiar 0–1 range.lora_name- picked from yourComfyUI/models/lorasfolder. Must be a visual LTX 2.3 LoRA.relay_timing(optional) - from LTXV Prompt Relay Encode (Scheduled). Couples your curve's default shoulder to PromptRelay's epsilon so LoRAs ease in when prompts change.ramp_mode,q_in/q_out,q_in_shift/q_out_shift- shape and position.flatmode if you want a hard on/off.
Outputs: model (chain into the next TimeGate, then the sampler), video_latent (passthrough for cleaner stacking), schedule_info, and data - which you feed to the LTXV Temporal Schedule Preview as data_1…data_4 so you can see the envelope before sampling.
Installing and the gotchas that will actually bite
cd ComfyUI/custom_nodes
git clone https://github.com/Jinx138/ComfyUI-LTXV-TimeGated-LoRA.git
Restart, hard-refresh, or install via ComfyUI Manager. No pip deps.
Three things trip people up. First, this node should be the last temporal LoRA patch before the sampler/guider - the model input tooltip says it outright. Second, if you get a "Persistent TemporalLoRALinearWrapper objects from older builds" error, that's a stale-state message from an older version of the pack: restart ComfyUI and it clears. Third, since LTX 2.3 LoRAs can affect motion, anatomy, and detail differently, test unfamiliar LoRAs individually before stacking - and remember the community's standing advice that overweighted LoRAs are the usual cause of 2.3's "diseased skin" artifact. A strong I2V image anchor can also suppress LoRA transformations entirely, so if a gate looks like it did nothing, check the anchor before the curve.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | MODEL after PromptRelay Scheduled. This scheduled TimeGate should remain the last temporal LoRA patch before sampler/guider. | |
| video_latent | LATENT | Same video-only LTX LATENT used by LTXV Schedule Sync. | |
| segment_data | LTXV_SEGMENT_DATA | From LTXV Schedule Sync. Determines exact segment boundaries. | |
| fps | FLOAT | 24.001–240 | — |
| lora_name | COMBO | 0 options: | |
| target_segment | INT | 11–4 | One-based segment index from Schedule Sync. Temporal Director supports max four segments. |
| strength_model | FLOAT | 1.00-8–8 | — |
| strength_before | FLOAT | 0.00-8–8 | Level before the incoming ramp. For target segment 1, q_curve uses a full virtual preceding segment and renders only the visible slice without compressing the curve. |
| strength_during | FLOAT | 1.00-8–8 | — |
| strength_after | FLOAT | 0.00-8–8 | Level after the outgoing ramp. For the final target segment, q_curve uses a full virtual following segment and renders only the visible slice without compressing the curve. |
| ramp_mode | COMBO | q_curve | 2 options: flat, q_curve |
| q_in | FLOAT | 1.000.01–16 | — |
| q_out | FLOAT | 1.000.01–16 | — |
| memory_mode | COMBO | optimized_safe | 2 options: optimized_safe, optimized_low_vram_inplace |
| q_in_shift | FLOAT | 0.00-1–1 | Move the incoming transition phase. 0 keeps the epsilon-derived default. +1 completes the incoming ramp at the target segment midpoint; -1 moves completion to the preceding (or virtual pre-roll) midpoint. Use +1 with q_out_shift=-1 for a centered LoRA peak. |
| q_out_shift | FLOAT | 0.00-1–1 | Move the outgoing transition phase. 0 keeps the epsilon-derived default. -1 starts the outgoing ramp at the target segment midpoint; +1 delays it to the following (or virtual post-roll) midpoint. Use -1 with q_in_shift=+1 for a centered LoRA peak. |
| relay_timingopt | LTXV_RELAY_TIMING | Optional from LTXV Prompt Relay Encode (Scheduled). PromptRelay epsilon defines the default q-curve shoulder; q_in_shift/q_out_shift move the phase within the shared segment timeline. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| video_latent | LATENT | — |
| schedule_info | STRING | — |
| data | LTXV_ENVELOPE_DATA | — |