Nodes/KIE.ai Nodes Next/Generate sounds · V5
ComfyUI Node

Generate sounds · V5

Not a song — loops, tempos and keys that fit your edit

By felipederosilva·Created about a month ago·Updated a day ago· 3
Generate sounds · V5
    • audio
    • url
    • all_urls_json
    • task_id
    • raw_json
    • credits_consumed
    • credits_left
    ◄promptsint►
    ◄sound_looptrue►
    ◄sound_tempo166►
    ◄sound_keyD#m►
    ◄grab_lyricstrue►
    ◄timeout_seconds1200►
    ◄callback_url►

    Ignore the word "music" for a second. This one is Suno's sounds endpoint, and the difference is practical: instead of a track with a structure, you get a sound asset you can loop under a clip. Riser, drone, ambient bed, drum pattern, a texture for a scene transition. It's the node you reach for when a video render is finished and silent, and you don't want a whole song - you want twenty seconds of atmosphere.

    That job belongs to the same family as foley work - making audio that matches pictures rather than words - and it's the cheaper, more controllable end of it. Text-driven, deterministic-ish, and it comes back fast.

    What it does

    Standard pack behaviour: build the request, send it to KIE.ai under the transport model ai-music-api/sounds with V5 as the model version, then block and poll until the task finishes or timeout_seconds (default 1200 seconds) is exhausted. The result is downloaded and decoded into a plain ComfyUI AUDIO object, so SaveAudio, a preview node, or the audio input of a video-combine step all just work. Nothing loads on your GPU.

    The five controls, all of which matter

    prompt is required and short - the endpoint documents a 500-character limit, which is a sentence or two of description, not a paragraph.

    sound_tempo (1–300, default 166) is the reason this node exists rather than the music generator. Set it to your edit's BPM and the loop lands on the beat instead of fighting it.

    sound_key gives you 24 options: twelve minor keys (Cm, C#m, Dm …) and twelve major (C, C#, D …), default D#m. If the sound is going under existing music, match the key or it'll clash audibly.

    sound_loop (default true) asks for a cycle rather than a one-shot - which is what you want for anything sitting under footage, and what you don't want for a one-off hit.

    grab_lyrics (default true) is the odd one: the docs describe it as capturing lyric subtitles after completion, which normally means an extra call to fetch them. For an instrumental loop you're unlikely to need it; turn it off if you're minimising round trips.

    Outputs

    audio is the asset. all_urls_json keeps every URL the response returned, so if the call produced several variations you can pick a different one without re-running; audio is simply the first. url, task_id and raw_json cover linking and debugging, and credits_consumed plus credits_left tell you what it cost and what's still in the account - both also appear on the node face after a run, which is the nicest thing this pack does for anyone spending credits in bulk.

    Getting it installed

    ComfyUI Manager → search ComfyUI-KIE-Nodes-Next, or clone it:

    cd ComfyUI/custom_nodes
    git clone https://github.com/felipederosilva/ComfyUI-KIE-Nodes-Next
    

    Restart right after. Dependencies are requests, Pillow, numpy and PyYAML; there's no model directory to populate. Then paste your KIE.ai key in Settings → KIE.ai Nodes Next → Connection → Paste / replace KIE.ai API key - validated before saving, kept out of workflow JSON, shown masked. Headless installs can export KIE_API_KEY instead.

    One pack-level note worth knowing: this node appears in the menu under KIE Next / Audio / Suno (not Music Generation) because its family in KIE's catalog is Sounds Generation. Same pack, same auth, same credit pool - just a different subfolder, which is why people think they've installed the wrong thing.

    Caveats

    V5 is a discontinued version. KIE's parameter docs list V5 and V5.5 as (Discontinued), with V6, V6_MINI and V6_WILD current. This node takes whichever version it was generated for; if a run fails with a model error, look for the V6 siblings under the same folder.

    A loop is not a score. You get one asset per call, not a callback-engineered sequence, and there's no mixing control - drop it under your clip, cross-fade in your editor, done.

    It's cheap but not free. Generating six candidate drones to audition is six paid calls. Once you know roughly what tempo and key you need, one or two tries is usually enough.

    Metered API means your prompt leaves the machine. Same tradeoff as every hosted-model node; fine for a personal edit, worth a thought for client material under NDA.

    CategoryKIE Next/Audio/Suno

    Inputs (7)

    NameTypeDefaultDescription
    promptSTRINGsintSound task type limit: 500 characters
    sound_loopoptBOOLEANtrueIs it a cycle?
    sound_tempooptINT1661–300Do not broadcast.
    sound_keyoptCOMBOD#m24 options: D#m, Cm, C#m, Dm, Em, Fm, +18
    grab_lyricsoptBOOLEANtrueWhether to capture the lyrics subtitles Will the interface be called after completion to obtain the lyrics subtitles?
    timeout_secondsoptINT120030–7200—
    callback_urloptSTRINGOptional KIE callback URL. Leave empty for normal ComfyUI use.

    Outputs (7)

    NameTypeDescription
    audioAUDIO—
    urlSTRING—
    all_urls_jsonSTRING—
    task_idSTRING—
    raw_jsonSTRING—
    credits_consumedFLOAT—
    credits_leftFLOAT—