FL Song Gen Auto Style
One dropdown, no style strings — FL SongGen Auto Style
- model
- mixed_audio
- vocal_audio
- bgm_audio
Not everyone wants to write female, warm, pop, emotional, piano and drums, the bpm is 120 by hand every time. This is the "just make me a song" node: pick a genre preset, paste your lyrics, and go. It's the same generation engine as FL SongGen Generate, but the style comes from a dropdown of twelve presets instead of a description string - Pop, R&B, Dance, Jazz, Folk, Rock, Chinese Style, Chinese Tradition, Metal, Reggae, Chinese Opera, and Auto.
How it works
The interesting bit is how the preset steers the model. Where Generate passes a text description, Auto Style uses pre-trained style tokens: a file called new_prompt.pt lives in ComfyUI/models/songgen/, and the node looks up the embedding for your chosen preset and conditions generation on it directly. No text parsing, no typos, no BPM phrase to get wrong.
Two consequences worth knowing:
- The presets lean heavily Chinese (three of the twelve are Chinese styles) because the base model is a Tencent release and the strongest training data is there. If you're writing English pop,
Pop,R&B, orRockwill behave, and the others may feel like they're singing with an accent. - If
new_prompt.ptis missing, the node logs a warning and falls back to no style conditioning. Your song still generates - it just won't be stylistically directed. So a missing file shows up as "songs that all sound generic," not as an error.
Inputs and outputs
Required: model (from the Model Loader), lyrics (the same tagged format), and auto_style (the preset). There is deliberately no description field - that's the point. The optional duration, temperature, cfg_coef, top_k, gen_type, and seed are identical to Generate, including the same gotcha: on the default gen_type of mixed, mixed_audio is the only output with sound, and vocal_audio/bgm_audio are silence until you switch to separate.
Outputs are the same three AUDIO dicts: mixed_audio, vocal_audio, bgm_audio.
Install
ComfyUI Manager (search "FL Song Gen"), or:
cd ComfyUI/custom_nodes
git clone https://github.com/filliptm/ComfyUI_FL-SongGen.git
cd ComfyUI_FL-SongGen
pip install -r requirements.txt
Restart ComfyUI, and the first run downloads the model checkpoints to ComfyUI/models/songgen/ automatically - a few gigabytes, so go make coffee. This node leans on the same heavy stack (torch, transformers, diffusers, librosa, k-diffusion, x-transformers) as the rest of the pack.
Troubleshooting
- Every preset sounds the same - check
ComfyUI/models/songgen/new_prompt.ptexists; without it, Auto Style silently generates with no style at all. - Stems are silent -
gen_typeis onmixed; useseparate. - Chinese presets feel off for English lyrics - expected; the Chinese-tuned presets shine on Chinese lyrics, so pick a general one for English.
- "Auto" did something weird - that preset literally means "let the model decide," so variance is the feature.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| model | SONGGEN_MODEL | Loaded SongGeneration model | |
| lyrics | STRING | [intro-short] ; [verse] Hello world.This is a test ; [chorus] Singing along.Making music ; [outro-short] | Formatted lyrics with section tags |
| auto_style | COMBO | Pop | Preset style for generation |
| durationopt | FLOAT | 6030–270 | Target duration in seconds |
| temperatureopt | FLOAT | 0.900.1–2 | Sampling temperature (higher = more random) |
| cfg_coefopt | FLOAT | 1.50.5–5 | Classifier-free guidance strength |
| top_kopt | INT | 501–500 | Top-k sampling (lower = more focused) |
| gen_typeopt | COMBO | mixed | Output type: mixed, separate (all tracks), vocal only, or bgm only |
| seedopt | INT | -1-1–2147483647 | Random seed (-1 for random) |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| mixed_audio | AUDIO | — |
| vocal_audio | AUDIO | — |
| bgm_audio | AUDIO | — |