Nodes/KIE.ai Nodes Next/KIE • SFX Prompt from Cue
ComfyUI Node

KIE • SFX Prompt from Cue

One sound effect at a time, on purpose

By felipederosilva·Created 2 months ago·Updated 3 days ago· 3
KIE • SFX Prompt from Cue
    • suno_sounds_prompt
    • sound_loop
    • grab_lyrics
    • cue_time_seconds
    • cue_id
    ◄sound_cues_json—►
    ◄modetimed effect►
    ◄cue_number1►

    This node selects. You hand it a sound cue sheet, tell it whether you want a one-shot effect or the ambience loop, give it a cue number, and it hands back a prompt plus the three extra fields a KIE Suno Sounds node needs to place that sound correctly.

    The reason it selects only one is the reason it exists: generating your sound design as a single blob and hoping the ducking and timing work out is how you get a muddy mix you can't fix. One effect, one generation, reviewed independently - then assemble.

    Local, free, no API call. The money is spent when you wire its output into a Suno Sounds node, which the README calls out as an explicit paid action.

    Two modes, two different prompts

    timed effect (default) - picks cue number N from the sheet, checks it's stamped editor-verified, and builds:

    Isolated cinematic sound effect: <your description>. No music, no speech, no melody. Distinct attack and natural decay; clean background for editorial placement.

    What comes back with it: sound_loop = false (a one-shot shouldn't loop), grab_lyrics = false, cue_time_seconds set to that cue's timestamp, and cue_id like SFX-02. That time value is the point - it's what tells the assembly stage when the effect belongs.

    ambient loop - ignores the cue list entirely and uses the sheet's ambience text:

    Seamless environmental ambience loop: <ambience>. No music, no speech, no melody. Consistent sound bed with a clean loop point.

    Output is sound_loop = true, grab_lyrics = false, cue_time_seconds = 0, cue_id = AMBIENCE.

    Every prompt gets truncated to 500 characters, which is the documented limit on the KIE Sounds side. Keep your cue descriptions tight and this never bites you.

    Inputs and outputs

    • sound_cues_json - forced input from KIE • Sound Cue Sheet.
    • mode - timed effect or ambient loop.
    • cue_number - 1 to 30, default 1. Only meaningful in timed-effect mode.

    Outputs: suno_sounds_prompt (the ≤500-character string), sound_loop (BOOLEAN), grab_lyrics (BOOLEAN), cue_time_seconds (FLOAT), cue_id (STRING). Wire the prompt and the two booleans into the Suno Sounds node, and keep the time and ID for your assembly step - KIE • Assemble Video + Music accepts two timed SFX inputs and the timecodes are how they land in the right place.

    Errors you'll actually see

    "Cue number 4 is unavailable; the sheet contains 3 approved timed effect(s)." The sheet changed and your number didn't. Re-read the cue sheet output; cues are numbered in time order.

    "Only editor-verified cues can become timed SFX prompts." The cue exists but wasn't approved by a human. That only happens with hand-edited JSON - cues built from editor_cues_json or from Review Video Events come through verified. If you've been editing the sheet by hand, don't strip the status field.

    "Sound Cue Sheet is missing the cues list." You wired a Music Brief output into this socket. It wants a cue sheet, which has a cues array; the music brief has a different shape.

    "Sound Cue Sheet has no ambience description." Ambient-loop mode on a sheet with a blank bed. Note the sheet itself won't let you get to that state - this is the hand-edited case again.

    Install

    Same pack, same drill:

    cd ComfyUI/custom_nodes
    git clone https://github.com/felipederosilva/ComfyUI-KIE-Nodes-Next
    cd ComfyUI-KIE-Nodes-Next
    pip install -r requirements.txt
    

    Restart ComfyUI and find it under KIE Next / Studio / Audio. No extra dependencies, no key needed to build the prompt - but you do need a saved KIE API key before the Suno node downstream will submit anything, and that's set once under Settings → KIE.ai Nodes Next → Connection.

    One opinion

    Run each effect separately, listen to it, then assemble. The README says exactly that, and it's the difference between a sound design pass you can iterate on and a single generation you have to re-roll wholesale. Two effects and hard cuts are the current limit on the assembly node - no transition styles yet.

    CategoryKIE Next/Studio/Audio

    Inputs (3)

    NameTypeDefaultDescription
    sound_cues_jsonSTRING—
    modeCOMBOtimed effect2 options: timed effect, ambient loop
    cue_numberINT11–30—

    Outputs (5)

    NameTypeDescription
    suno_sounds_promptSTRING—
    sound_loopBOOLEAN—
    grab_lyricsBOOLEAN—
    cue_time_secondsFLOAT—
    cue_idSTRING—