AceMusic Cover (Audio2Audio)
Turn any audio into a jazz cover without rerecording a single note
- model
- audio
- audio
AceMusic Cover (Audio2Audio) is the pack's party trick, and it's the node people find first - it's the most-searched AceMusic node for a reason. You feed it an existing audio clip and a new style description, and it re-sings the same song as a jazz cover, a rock version, whatever caption you write. Same structure, same arrangement bones, completely different clothes. It's the closest thing the open-source music world has to a Suno "style change" that you run on your own hardware.
Inputs:
- model - from AceMusic Model Loader.
- audio - the source clip. This is a core
AUDIOtype, so it plays nice with audio from other ComfyUI audio packs. The README explicitly calls out HeartMuLa nodes as compatible sources, and it also accepts a track you generated earlier in the same graph - loop a Generator into a Cover and you've got an instant remix chain. - caption - the new style, defaulting to
Jazz cover with piano and saxophone. Same style-tag vocabulary as the main generator: genre, vocal, mood, instruments. - cover_strength - the key dial, 0 to 1, default 0.5. This is how aggressively the style replaces the original. Low values stay close to the source; high values let the model go wild.
Optional: lyrics (to override the words), inference_steps, and seed. One output: audio, same length as the source - the node keeps the original duration, it doesn't stretch it.
How it works
Under the hood this is ACE-Step's audio2audio path. The node writes your source clip to a temp WAV, measures its duration, and passes it to the pipeline as a reference (ref_audio_input). Here's the counterintuitive bit worth knowing: the pack maps cover_strength inversely to ACE-Step's ref_audio_strength - the code computes ref_audio_strength = 1 - cover_strength. So a higher cover_strength means less reference audio is kept, which means more transformation. If a cover comes back sounding suspiciously like the original, that's a low-strength result; crank it toward 1.
Installing it
Via ComfyUI Manager, search "ComfyUI-AceMusic", or:
cd ComfyUI/custom_nodes
git clone https://github.com/hiroki-abe-58/ComfyUI-AceMusic.git
cd ComfyUI-AceMusic
pip install -r requirements.txt
pip install git+https://github.com/ace-step/ACE-Step.git
Pack deps are light; ACE-Step is the separate install that actually matters, and its strict == version pins are the usual failure point. If pip dies on torchaudio==2.10.0+cu128 or matplotlib==3.10.1, clone ACE-Step, relax the pins to >=, pip install -e ., or install deps manually with --no-deps.
Common issues
- The "cover" sounds almost identical to the source -
cover_strengthis too low, or it's at a setting whereref_audio_strengthkeeps most of the original. Raise it toward 0.8–1.0. - The result barely resembles the original - cover_strength is too high, or you left the caption describing a radically different genre. There's a sweet spot around 0.4–0.7; tune in 0.05 steps.
- "No audio generated" - check
inference_stepsis in range, and confirm the source audio actually decodes (the pack validates rather than crashing, but a broken source still yields nothing). - Vocals didn't change but instruments did (or vice versa) - that's the model's call at your current strength; try nudging strength and giving the caption more vocal detail like "male vocal" or "choir".
The flow that keeps people on this node: generate a track, cover it three ways with different captions, pick the winner, and loop it again. It's fast enough on a 4090 that the whole trial loop takes less than a minute of compute per take.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| model | ACEMUSIC_MODEL | — | |
| audio | AUDIO | — | |
| caption | STRING | Jazz cover with piano and saxophone | — |
| cover_strength | FLOAT | 0.500–1 | — |
| lyricsopt | STRING | — | |
| inference_stepsopt | INT | 271–100 | — |
| seedopt | INT | -1-1–2147483647 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | — |