SongBloom Audio Prompt
The 10-second clip that makes SongBloom sing *your* song
- audio
- processed_audio
- info
Here's the thing that confuses everyone about SongBloom the first time: it isn't pure text-to-music. It's a model that takes a short audio reference plus your lyrics, and basically sings your words over something close to the reference's melody and vibe. This node is how you make that reference. Skip it and the generator runs on silence - technically allowed, musically pointless.
The name gives away the job: it prepares an audio prompt. Feed it a path to any music file, and it loads the clip, resamples it to 48kHz, converts it to mono, and trims or pads it to your target length. What comes out the other side is a clean, ready-to-consume AUDIO tensor that you wire into the generator's audio_prompt input.
Inputs and outputs
- audio_file - a string, but not a boring one. The widget comes with a front-end that scans common directories (your Music folder, Desktop, Downloads,
ComfyUI/input,ComfyUI/models/audio, and more) and gives you a dropdown of actual audio files. Pick one, or use the "no audio prompt" option if you want to skip the reference. WAV and FLAC are the recommended formats; MP3, OGG, M4A and AAC are also picked up. - audio (optional) - instead of a file path, you can pass an
AUDIOtensor from another node, likeSongBloomAudioCropper. That's the classic trick: crop a specific 5–15 second segment - a verse or chorus you like - and use that as the style reference. - target_duration (optional) - default 10 seconds, 1–30. This is the reference length fed to the model.
Outputs are processed_audio (AUDIO), which goes to SongBloomGenerator's audio_prompt, and info (STRING) with what the node actually did.
How to use it well
The reference clip is a style driver, not a karaoke backing track. The model copies melody and rhythm loosely - community testers noted it often strongly imitates the reference's melody, and sometimes basically replays the hook. That's a feature if you want a "this song but mine" result, and a trap if you expected original composition. A few practical rules:
- 5–15 seconds is the sweet spot. Shorter clips give the model less to latch onto; anything past 30 gets ignored anyway.
- Pick a representative segment. An intro is fine, but a verse or chorus crops better because it has the actual vocal/melody character you want to inherit. This is why the
SongBloomAudioCropperpairing exists. - Quality of the reference is quality of the song. Upscaled or muddy references give you muddy songs.
Install & gotchas
Same as the whole pack - search "SongBloom_ComfyUI" in ComfyUI Manager, or clone it manually:
cd ComfyUI/custom_nodes
git clone https://github.com/xuchenxu168/SongBloom_ComfyUI
cd SongBloom_ComfyUI
pip install -r requirements.txt
Restart, and you'll find this under SongBloom/Audio. Two things to remember: the file dropdown only shows what it can find, so drop your reference clips somewhere it scans (or pass a full path), and the 10-second default isn't a hard law - on tight VRAM, cutting target_duration and the generator's prompt_max_seconds down to 5 is one of the cheapest ways to keep a generation from OOMing.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| audio_file | STRING | — | |
| audioopt | AUDIO | — | |
| target_durationopt | FLOAT | 10.01–30 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| processed_audio | AUDIO | — |
| info | STRING | — |