Nodes/DiffusionGemma Prompt Builder/DiffusionGemma LTX Performance Prompt
ComfyUI Node

DiffusionGemma LTX Performance Prompt

Tells LTX whether to sing, dance, or just move to the beat

By exportAnything·Created 2 months ago·Updated a day ago· 44
DiffusionGemma LTX Performance Prompt
    • ltx_prompt
    • selected_lyrics
    • status
    • performance_report_json
    • performance_mode
    ltx_prompt
    performance_modeNatural / audio-led sync
    song_duration_seconds90.00
    excerpt_start_seconds0.00
    excerpt_duration_seconds20.00
    lyrics
    performance_mode_override

    LTX-2.x generates video with synchronized audio, which means its prompt is also deciding whether the subject is singing along to the track - and left to its own devices, it will do the thing you least expect. DiffusionGemma LTX Performance Prompt exists to make that decision explicit. It sits after the validated Director gate and changes only prompt text: Natural, Dance, or Lyrics, applied to whatever prompt the Director already validated.

    The sharpest way to understand it is the mode contract, because each one is a deliberate suppression or permission:

    • Natural / audio-led sync - adds no lyric schedule. Connected audio alone governs whether articulation naturally occurs. This is the honest default: let the track decide.
    • Dance / music sync - deliberately suppresses singing, speaking, mouthing, and lip-sync, while retaining beat-, phrase-, and dynamics-aware body motion. When you want a dancer, not a singer, this is the mode - and it's why the node exists, because "stop mouthing the words" is not something you want to fight per-prompt.
    • Lyrics + lip sync - supplies a bounded authored-lyric window only as lexical/pronunciation candidates. The key limitation, straight from the README: it no longer orders the subject to sing every selected line. The window is pronunciation evidence for whatever articulation happens, not a karaoke command.

    The node never changes the conditioning waveform or the pristine final soundtrack - it's text-in, text-out.

    Inputs that matter

    • ltx_prompt - the validated prompt text from the Director gate. This is what gets rewritten.
    • performance_mode - Natural / Dance / Lyrics.
    • song_duration_seconds (default 90), excerpt_start_seconds, excerpt_duration_seconds - where in the track this performance window sits.
    • lyrics - the authored lyric text. In Lyrics mode it becomes a bounded lexical window; in Dance mode it's ignored for articulation purposes.
    • performance_mode_override - optional typed upstream source of truth. When connected, it overrides the legacy local dropdown without removing the dropdown from older workflows. This is the pack's pattern for "the whole workflow already decided the mode once" - a shared Music-Video Performance Mode node upstream can be authoritative.

    Outputs: the rewritten ltx_prompt, selected_lyrics (what actually entered the prompt), status, performance_report_json, and a performance_mode string so downstream nodes know which policy was applied.

    Where it fits

    The performance mode is a shared decision across the music-video stack - the pack also has a Music-Video Performance Mode node that makes Natural/Dance/Lyrics one choice before the video Director, feeding target guidance, lyric-window selection, and lane planning. This node is the LTX-specific application of that decision at the prompt level. Because it's downstream of the generation gate, a failure here is a text problem you can see in status, not a silent validation collapse.

    Installing it

    Part of the exportAnything/ComfyUI-DiffusionGemmaPromptBuilder pack, under prompt/diffusiongemma/audio-production:

    cd ComfyUI/custom_nodes
    git clone https://github.com/exportAnything/ComfyUI-DiffusionGemmaPromptBuilder
    

    or search DiffusionGemma Prompt Builder in ComfyUI Manager and restart. Pure string logic - no model, no VRAM cost beyond the graph it hangs off. Real Lyrics-mode lip-sync also needs the timed-lyrics evidence path (Whisper + a vocal stem), which are separate downloads.

    Common issues

    • The subject sings when you wanted a dancer. You're in Natural mode with a vocal track, and articulation followed the audio. Switch to Dance if singing is unwanted - that's the entire point of the mode.
    • Lyrics mode still doesn't force every line. That's the current contract: bounded lexical candidates, not a singing schedule. If you need strict line-per-line lip-sync, look upstream at the timed-lyrics analysis and how the Director's lyric window is authored, rather than expecting this node to karaoke the whole song.
    • Two dropdowns disagreeing. If you have both a local performance_mode and a connected performance_mode_override, the override wins - check which is live before blaming the output.
    Categoryprompt/diffusiongemma/audio-production

    Inputs (7)

    NameTypeDefaultDescription
    ltx_promptSTRING
    performance_modeCOMBONatural / audio-led syncDance suppresses visible vocal articulation. Lyrics supplies bounded lexical/pronunciation candidates but never timing. Natural lets connected audio alone govern articulation.
    song_duration_secondsFLOAT90.000.01–86400
    excerpt_start_secondsFLOAT0.000–86400
    excerpt_duration_secondsFLOAT20.000.01–86400
    lyricsoptSTRING
    performance_mode_overrideoptSTRINGOptional typed upstream source of truth. When connected, this overrides the legacy local dropdown without removing it from older workflows.

    Outputs (5)

    NameTypeDescription
    ltx_promptSTRING
    selected_lyricsSTRING
    statusSTRING
    performance_report_jsonSTRING
    performance_modeSTRING