Nodes/RyanOnTheInside/ACE-Step 1.5 Cover Guider βš‘πŸ…‘πŸ…žπŸ…£πŸ…˜
ComfyUI Node

ACE-Step 1.5 Cover Guider βš‘πŸ…‘πŸ…žπŸ…£πŸ…˜

Same song, different voice

By ryanontheinsideΒ·Created 2 years agoΒ·Updated 5 months agoΒ· 852
ACE-Step 1.5 Cover Guider βš‘πŸ…‘πŸ…žπŸ…£πŸ…˜
  • model
  • positive
  • negative
  • source_latents
  • semantic_hints
  • reference_latent
  • GUIDER
β—„cfg1.0β–Ί

This is the guider behind ACE-Step 1.5's "cover" task - keep the structure and melody of a source track, swap out the timbre. Think: same song, rendered by a different instrument or voice. It's a sibling of the Edit Guider (which extends/repaints) but built for a genuinely different job, which is why RyanOnTheInside ships them as separate native guiders instead of cramming both into one node with a mode dropdown.

How it works

The trick is decoupling "what the song is" from "what it sounds like." Instead of feeding raw source audio conditioning, this guider works with semantic_hints - a representation of the source's musical content pulled out by the pack's ACE-Step 1.5 Semantic Extractor node - and, optionally, a reference_latent that supplies the target timbre. The guider's job is to steer generation so the structure follows the semantic hints while the sound follows the reference. Per the reference-latent tooltip, this "decouples timbre from the source audio's semantic content - the cover follows the source's structure but adopts this reference's instrument/voice character."

The inputs and outputs that matter

  • model, positive, negative, source_latents, cfg (default 1, range 0–100) - the standard ACE-Step guider set: model, encoded conditioning (from Task Text Encode with task_type set to cover), and the source track's latent.
  • semantic_hints (optional, type SEMANTIC_HINTS) - the output of the ACE-Step 1.5 Semantic Extractor node run against your source track. This is what actually carries "what the song is" into the cover.
  • reference_latent (optional) - the timbre donor. Feed it a latent from whichever track has the voice/instrument character you want the cover to adopt. Skip it and the cover leans on the model's own interpretation instead.
  • Output - a single GUIDER, which goes straight to your sampler (SamplerCustomAdvanced or equivalent). Note this node doesn't hand back a latent the way the Edit Guider does - just the guider object.

How to install it

Via ComfyUI Manager, search "RyanOnTheInside," install, restart. Manual install:

cd ComfyUI/custom_nodes
git clone https://github.com/ryanontheinside/ComfyUI_RyanOnTheInside.git
cd ComfyUI_RyanOnTheInside
pip install -r requirements.txt

then restart ComfyUI. First-ever ACE-Step run in this pack pulls "silence latents" from HuggingFace automatically, so budget for a network hiccup on your first generation.

Common issues & troubleshooting

The cover just sounds like a generic new song, not a cover of your source. You almost certainly skipped semantic_hints. Without it, the guider has no signal for "what the original structure was" and is mostly working from your text prompt - run the Semantic Extractor on source_latents first and wire its output in.

Timbre doesn't change even though you set reference_latent. Make sure the reference is actually a different track's latent than your source - if you feed it the same source audio, you're just asking the model to imitate itself, which reads as "no change."

Full pipeline confusion: which nodes feed which. The dependency order is: Semantic Extractor (model + source_latents β†’ semantic_hints) β†’ this Cover Guider (source_latents + semantic_hints + optional reference_latent β†’ GUIDER) β†’ your sampler. Skipping the extractor step is the single most common reason this guider underperforms - it's built to lean on it.

extract and lego task types show up in Task Text Encode but there's no dedicated guider for them here. As of this pack's current release, extract and lego guiders were still being built out - the author has publicly said they're on the roadmap. Cover is the one that's fully native today.

Categorysampling/custom_sampling/guiders

Inputs (7)

NameTypeDefaultDescription
modelMODELβ€”
positiveCONDITIONINGβ€”
negativeCONDITIONINGβ€”
cfgFLOAT1.00–100β€”
source_latentsLATENTβ€”
semantic_hintsoptSEMANTIC_HINTSβ€”
reference_latentoptLATENTOptional reference audio latent for timbre conditioning. Decouples timbre from the source audio's semantic content β€” the cover follows the source's structure but adopts this reference's instrument/voice character.

Outputs (1)

NameTypeDescription
GUIDERGUIDERβ€”