ComfyUI Node
LTX Director (Koolook)
Same as Prompt Relay Encode, but local prompts and segment lengths are edited visually as draggable blocks on a timeline. The duration_frames input only sets the timeline scale (pixel space) — actual frame count is still read from the latent.
LTX Director (Koolook)
- model
- clip
- audio_vae
- optional_latent
- reference_images
- model
- positive
- video_latent
- audio_latent
- guide_data
- motion_guide_data
- frame_rate
- combined_audio
- clean_latent_frames
- clean_pixel_frames
◄start_second0.00►
◄end_second5.00►
◄duration_seconds5.00►
◄start_frame0►
◄end_frame120►
◄duration_frames120►
◄timeline_data►
◄local_prompts►
◄segment_lengths►
◄epsilon0.0010►
◄guide_strength►
◄global_prompt►
◄use_custom_audiofalse►
◄use_custom_motiontrue►
◄inpaint_audiotrue►
◄frame_rate24►
◄display_modeseconds►
◄custom_width0►
◄custom_height0►
◄resize_methodmaintain aspect ratio►
◄divisible_by32►
◄img_compression18►
◄override_audiofalse►
◄snap_keyframes_to_gridtrue►
◄keyframe_ease0►
◄ease_falloff0.50►
◄reference_strength1.00►
CategoryKoolook/PromptRelay
Inputs (32)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| clip | CLIP | — | |
| start_second | FLOAT | 0.000–1000 | Start time in seconds of the timeline generation. |
| end_second | FLOAT | 5.000–1000 | End time in seconds of the timeline generation. |
| duration_seconds | FLOAT | 5.000.1–1000 | Total timeline duration in seconds (computed/synced from frames). |
| start_frame | INT | 00–10000 | Start frame of the timeline generation. |
| end_frame | INT | 1201–10000 | End frame of the timeline generation. |
| duration_frames | INT | 1201–10000 | Total timeline length in pixel-space frames. Used by the editor for visual scale only. |
| timeline_data | STRING | JSON state of the timeline editor (auto-managed; do not edit by hand). | |
| local_prompts | STRING | Auto-populated from the timeline editor. | |
| segment_lengths | STRING | Auto-populated from the timeline editor (pixel-space frame counts). | |
| epsilon | FLOAT | 0.00100.0001–0.99 | Penalty decay parameter. Values below ~0.1 all produce sharp boundaries (paper default 0.001). For softer transitions, try 0.5 or higher. |
| guide_strength | STRING | Auto-populated from the timeline editor (comma-separated guide strengths for image segments). | |
| audio_vaeopt | VAE | Optional. Connect an Audio VAE to generate audio latents. | |
| optional_latentopt | LATENT | Optional. Connect a latent to override the auto-generated one. | |
| global_promptopt | STRING | Conditions the entire video. Anchors persistent characters, objects, and scene context. | |
| use_custom_audioopt | BOOLEAN | false | Toggle between using timeline audio (ON) and generating audio from scratch (OFF). |
| use_custom_motionopt | BOOLEAN | true | Toggle between using timeline motion guidance (ON) and ignoring motion video segments (OFF). |
| inpaint_audioopt | BOOLEAN | true | Toggle whether empty gaps in the audio track are inpainted with generated audio. |
| frame_rateopt | FLOAT | 241–240 | Frames per second — only affects how time is displayed in the timeline editor when time_units is set to 'seconds'. |
| display_modeopt | COMBO | seconds | Display the ruler, segment ranges, length input, and total in frames or seconds. Internal storage is always pixel-space frames. |
| custom_widthopt | INT | 00–8192 | Target output width for all image segments. Set to 0 to use the original image width. |
| custom_heightopt | INT | 00–8192 | Target output height for all image segments. Set to 0 to use the original image height. |
| resize_methodopt | COMBO | maintain aspect ratio | How to resize image segments to fit the target dimensions. |
| divisible_byopt | INT | 321–256 | Snap the final output image dimensions to be divisible by this number (e.g. 32 for LTX). |
| img_compressionopt | INT | 180–100 | H.264 CRF compression to apply to each guide image. 0 = no compression, higher = more artefacts. |
| override_audioopt | BOOLEAN | false | Use the audio from the IC-LoRA video instead of using the audio track. |
| snap_keyframes_to_gridopt | BOOLEAN | true | Koolook (issue #258): snap each image keyframe to the center of its LTX latent-time bucket so hard pins land cleanly on one latent frame, and bump pins that collide in the same bucket. Off = use raw timeline positions. |
| keyframe_easeopt | INT | 00–4 | Koolook: ease in/out of each hard pin. 0 = off (single frozen frame -> the robotic stop/dissolve). 1-2 adds strength-ramped neighbor pins of the SAME pose one latent bucket apart, so the model glides into and out of the locked pose instead of snapping. Center pose stays exact; costs extra guide frames (more compute). |
| ease_falloffopt | FLOAT | 0.500–1 | Strength multiplier per ease step: neighbor k gets center_strength * falloff**k. Lower = quicker release (less dwell), higher = gentler/longer ease. |
| reference_imagesopt | IMAGE | Koolook (Ghost Mask): optional reference image(s) / character sheet to anchor identity (face, mouth shape) the way a WAN VACE reference does. Each image is added as a guide frame just past the clean timeline, so the model attends to it for identity but it never appears in the output. It rides the SAME guide path as your keyframes — LTXDirectorGuide appends it and LTXDirectorCropGuides removes it, so no extra wiring and the audio stays in sync. No LoRA required. Lower reference_strength if the reference suppresses motion. | |
| reference_strengthopt | FLOAT | 1.000–5 | Guide strength for the reference image(s). 1.0 = full identity pull; lower it if the references bleed pose or lighting into the video. |
Outputs (10)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| positive | CONDITIONING | — |
| video_latent | LATENT | Auto-generated LTXV empty latent (only populated when no latent is connected). |
| audio_latent | LATENT | Auto-generated audio latent (uses custom audio if enabled). |
| guide_data | GUIDE_DATA | — |
| motion_guide_data | MOTION_GUIDE_DATA | — |
| frame_rate | FLOAT | The frame rate used for the timeline. |
| combined_audio | AUDIO | Combined timeline audio layout. |
| clean_latent_frames | INT | Latent frame count of the clean video region (excludes any appended reference frames). Wire to 'Clean Latent Slice (Koolook)' length with start=0 to drop the refs. |
| clean_pixel_frames | INT | Pixel frame count of the clean video region. |