Prompt Relay Advanced Options
Tuning the segment boundaries kijai's node draws
- relay_options
You don't need this node to use Prompt Relay. All three encoder nodes (Encode, Timeline, Smart) work fine with just their own epsilon setting. This one exists for the moment you've already got a working relay setup and want to push on individual dials - how hard the video boundary bites, how it treats audio separately, and how wide the "safe zone" around each segment's center is before the falloff starts. Plug its output into any encoder's relay_options input and it overrides the defaults for that run.
What each field actually controls
The two "strength" fields are multipliers on the temporal penalty that draws the line between segments - the same mechanism epsilon governs on the main encoder, just split out per stream and given a knob:
video_strength(default 1, range 0-10) - scales how hard the video segmentation bites. Set it to 0 and you disable video segmentation entirely, which is a real way to A/B test whether Prompt Relay is doing anything at all. The tooltip is unusually candid about the useful range: 0-1 softens boundaries, and anything above 1 saturates fast at the default epsilon (0.001) because the penalty is already strong enough to zero out distant tokens - so crankingvideo_strengthpast 1 does basically nothing unless you also raiseepsilonon the encoder to around 0.1 or higher first.audio_strength(default 1, range 0-10) - the audio equivalent. 0 lets audio bleed freely across visual cuts instead of following the segment boundaries; same saturation-above-1 caveat as video, same fix (raiseaudio_epsilon).audio_epsilon(default 0, range 0-0.99) - epsilon for the audio stream specifically. Leave it at 0 and it just inherits the main encoder's epsilon; give it its own value if you want audio and video boundaries to feel different (say, sharp visual cuts but audio that fades between beats).video_window_scaleandaudio_window_scale(default 1 each, range 0-4) - these scale the flat "anchor zone" around each segment's midpoint before the falloff to the next segment starts. Below 1, the soft falloff kicks in sooner; above 1, the rigid center of the segment is wider before it starts blending. Setting either to 0 is its own thing entirely - it collapses the anchor to a single point, so the falloff starts immediately at the midpoint, which is actually sharper, not softer, than the default.
The pack's node description also notes plainly that the audio fields only do anything on LTX2 - if you're driving a different model through Prompt Relay, audio_epsilon and audio_strength are dead weight you can leave at their defaults.
Inputs and outputs
All five fields above are required inputs on this node; there's nothing optional to skip. The single output is relay_options, a RELAY_OPTIONS object with no other use than plugging into an encoder node's relay_options socket.
Installing it
Comes with the pack, no separate install. Search "ComfyUI-PromptRelay" in ComfyUI Manager, or git clone https://github.com/kijai/ComfyUI-PromptRelay into custom_nodes and restart.
Common issues
Cranking video_strength above 1 and seeing no change. This is expected behavior, not a bug - read the tooltip's own math above. At the default epsilon of 0.001 the penalty is already saturated, so you need to raise epsilon on the encoder node before a higher strength value does anything visible.
Setting a window scale to 0 expecting it to soften things. It does the opposite - 0 collapses the anchor zone to a point and makes the falloff start immediately, which reads as sharper boundaries, not softer. If you want softer, go above 1, not down to 0.
Tuning audio fields on a non-LTX2 model and wondering why nothing happens. The pack tells you up front that the audio knobs are LTX2-specific - that's not a bug on your end, it's just outside what those fields touch.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| video_strength | FLOAT | 1.000–10 | Multiplier on the video temporal penalty. 0 disables video segmentation. Most useful in the 0–1 range to soften boundaries; values >1 saturate quickly at the default epsilon (1e-3) because the bias is already large enough to zero out distant tokens. To make >1 visibly meaningful, raise epsilon to ~0.1 or higher. |
| video_window_scale | FLOAT | 1.000–4 | Scales the flat anchor zone (default L/2 - 2 frames). <1 starts the soft falloff sooner; >1 widens the rigid zone. 0 collapses the anchor to a point — falloff begins immediately at the segment midpoint (sharper than default, not softer). |
| audio_epsilon | FLOAT | 0.00000–0.99 | Epsilon for the audio stream. 0 = inherit from the encoder's main epsilon. |
| audio_strength | FLOAT | 1.000–10 | Multiplier on the audio temporal penalty. 0 lets audio bleed across visual cuts. Most useful in the 0–1 range; values >1 saturate quickly at the default epsilon (1e-3) — raise audio_epsilon to ~0.1 or higher to make >1 visibly meaningful. |
| audio_window_scale | FLOAT | 1.000–4 | Scales the flat anchor zone width for the audio stream. <1 starts the soft falloff sooner; >1 widens the rigid zone. 0 collapses the anchor to a point — falloff begins immediately at the segment midpoint (sharper than default, not softer). |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| relay_options | RELAY_OPTIONS | — |