MD: ACE Sigma Denoise Patcher ✂️
The denoise knob for audio-to-audio
- sigmas
- sliced_sigmas
In image img2img you've got a denoise slider and everyone knows what it does: 0.3 lightly restyles, 1.0 starts from scratch. Audio-to-audio with ACE-Step needs the same dial, but the audio samplers in this pack take sigma schedules instead of a denoise number - and that's the gap this node fills. It takes any full sigma schedule and slices it to match a denoise level you set.
The math is refreshingly direct. A sigma schedule from a scheduler node is steps + 1 values long (it ends in 0.0). To hit a denoise of 0.70, the node keeps 70% of the steps and slices off the first 30% from the beginning of the schedule - the loudest, noisiest steps. What's left is a schedule that starts at a lower sigma, which is exactly what "start from an existing audio, don't erase it" means in diffusion terms.
The inputs
sigmas- any full sigma schedule. Wire it from a scheduler node (this pack's Hybrid Scheduler family works great; the stock ones do too).denoise- 0.01 to 1.0, default 0.70. The tooltip spells out the scale: 1.0 means ignore the input and generate from scratch; 0.70 means keep the MIDI/structure and paint new sounds; lower means increasingly faithful to the original.
One output, sliced_sigmas - the trimmed schedule, wired onward into the sampler.
How it fits a workflow
This is the companion to the pack's generative fill mask. The typical chain for "restyle this existing track": encode your audio to a latent, use MD_ACE_LatentInpaintMask if you want to fill only a time region, patch your sigma schedule with this node at ~0.7, and sample. The input audio provides structure (melody, rhythm, arrangement) while the sampler repaints timbre, instrumentation, and texture. Push denoise up toward 1.0 and the structure drifts into full regeneration; pull it below ~0.5 and the output hugs the original so tightly you might as well not have run it.
It's a small node - two inputs, one output - but it's the difference between "ACE-Step restyled my track" and "ACE-Step made me a completely different song I didn't ask for."
Installing it
Part of MD Nodes (MDMAchine/ComfyUI_MD_Nodes). ComfyUI Manager → search MD_Nodes → Install, restart, or:
cd path/to/ComfyUI/custom_nodes
git clone https://github.com/MDMAchine/ComfyUI_MD_Nodes.git
cd ComfyUI_MD_Nodes
pip install -r requirements.txt
No model downloads in the pack itself - the ACE-Step model loads separately via the ACE-Step XL Loader. Python 3.10+, current ComfyUI.
Common issues
Two easy misses. First, this node slices - it doesn't resample or re-curve - so at high denoise values the truncated schedule can feel chunky; that's the trade of a patcher, and if you want a properly recomputed partial schedule, the Hybrid Scheduler's denoise_mode is the alternative. Second, feed it the full schedule, not an already-sliced one: slicing a sliced schedule again compounds the drop and you'll silently get a much weaker denoise than the number suggests.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| sigmas | SIGMAS | The original full sigma schedule from any scheduler node. | |
| denoise | FLOAT | 0.700.01–1 | Audio-to-Audio Injection Strength. • 1.0 = Ignore input, generate from scratch. • 0.70 = Keep MIDI structure, paint new sounds. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| sliced_sigmas | SIGMAS | — |