ComfyUI Node
Satyr Music (Guided YuE2) π
A drop-in replacement for 'YuE2 Generate Music' that exposes cfg_scale, which YuE2's own reference implementation takes (0-20) and the ComfyUI node hardwires to 1.0 β meaning guidance is switched off entirely. The negative branch keeps the ABC and drops the style and the lyrics, so the scale amplifies those two against a plan that stays at full strength in both branches. Everything else behaves exactly like the core node. Above 1.0 it runs two branches: twice the VRAM, twice the time.
Satyr Music (Guided YuE2) π
- clip
- conditioning
- seconds
βstyleββΊ
βlyricsββΊ
βabcβΊ
βseed0βΊ
βmodeβΎβΊ
βmax_duration360.00βΊ
βcfg_scale1.00βΊ
βtemperature1.00βΊ
βtop_p0.95βΊ
βtop_k100βΊ
βrepetition_penalty1.20βΊ
CategoryKinburg-Nodes/Bestiary/Satyr
Inputs (12)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | The YuE2 checkpoint's CLIP output β the same one 'YuE2 Generate Music' takes. | |
| style | STRING | Language, genre, vocal character, tempo, instruments. One description for the whole song: YuE2 has no way to say that the style changes partway through. This is the field 'cfg_scale' amplifies, so it is the field to be precise in. 'dual vocals, powerful melodic female vocal, gritty male vocal' is what puts two singers in the song at all β without it a plan written for two registers still tends to come back in one voice. | |
| lyrics | STRING | The words, with plain '[Verse]' / '[Chorus]' tags and nothing else. Wire the 'lyrics' output of 'Satyr Score' here β YuE2 sings round brackets and has no field for a singer's name, so a marker left in the text is not ignored, it is sung. Amplified by 'cfg_scale' along with the style. | |
| abc | STRING | The plan. Leave it empty and the node falls back to 'off' mode exactly as the core node does. Note that the ABC is NOT amplified by 'cfg_scale': it sits in both branches of the guidance and cancels out. Raising the scale therefore pushes the style and the words harder while leaving the plan's own authority where it was. | |
| seed | INT | 00β18446744073709550000 | β |
| mode | COMBO | full: the plan carries chords. melody: melody only, for covers. An empty 'abc' ignores this and uses 'off'. | |
| max_duration | FLOAT | 360.000.04β900 | Ceiling in seconds. Generation usually stops earlier β the plan's own length is what decides, which is why 'Satyr Trim' is the node that actually shortens a song. |
| cfg_scale | FLOAT | 1.000β20 | How hard to push the style and the lyrics. 1.0 is off, and off is what the core node hardwires β this is the only reason this node exists. What it measurably does is DICTION. Words the model tends to swallow come through; the clearest case is a line in round brackets, which it otherwise sings too quietly or drops altogether. Raise this when the take is right but a phrase is mumbled. What it does not do is change who sings. That was the hope, and it was tested, and it does not. Why diction and not voices: the negative branch is the instruction plus the ABC, with [Tags] and [Lyrics] removed, so the plan sits in both branches and cancels out of the difference. The scale amplifies the words and the style description against a plan whose authority is unchanged β it makes the model articulate what it was given rather than rearrange it. Cost: anything other than 1.0 runs two branches, so roughly twice the VRAM and twice the time. |
| temperature | FLOAT | 1.000β5 | β |
| top_p | FLOAT | 0.950.01β1 | β |
| top_k | INT | 1001β32768 | β |
| repetition_penalty | FLOAT | 1.200.01β10 | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| conditioning | CONDITIONING | β |
| seconds | FLOAT | β |