ComfyUI Node

Resemble Enhance

Turn scratchy voice audio studio-clean, fully local

By EuphoricPenguin·Created 10 months ago·Updated 4 months ago· 6
Resemble Enhance
  • audio
  • enhanced_audio
cfm_solverMidpoint
cfm_nfe64
cfm_prior_temperature0.50
denoise_before_enhancementfalse

So you've got a podcast clip, a voice memo, or some noisy narration you recorded on a laptop mic, and you want it to sound like it was captured in a treated room. ComfyUI's audio side is usually just LoadAudio → SaveAudio, but this node plugs a serious speech-enhancement model into that gap. Resemble Enhance wraps Resemble AI's open-source model of the same name, and the whole thing runs on your GPU with no API key and no cloud round-trip.

The name is a slight overpromise - "enhance" here is really speech enhancement, not a magic fix-all for music. But for dialog it's genuinely good: the model strips background noise and hiss, repairs compression artifacts, and even extends the frequency range up to 44.1kHz. It's the kind of tool you reach for after you've already tried an EQ and realized you can't polish a noisy recording by hand.

How it actually works

The model is two stages stacked. A denoiser separates the speech from everything else in the track, then an enhancer - a latent conditional flow matching (CFM) model plus a UnivNet vocoder - regenerates clean, full-bandwidth audio from what the denoiser found. The flow matching is where the CFM parameters in the node name come from: the model integrates an ODE from a noisy prior toward the clean mel-spectrogram, and you get to tweak how it does that.

This specific pack is worth a note: it's an AI-generated wrapper (the README credits OpenHands, Cline, and DeepSeek), and the author shipped a deepend-free reimplementation of the inference code. That's actually the right call - the upstream resemble-enhance leans on DeepSpeed, which is a known pain on Windows, and this node sidesteps it. The tradeoff is that this is a very new, barely-used pack (zero impressions on the directory), so the code is the documentation. Don't expect a big community behind it yet.

The inputs that matter

There are only five inputs and you'll really touch two of them:

  • audio - the AUDIO output of any LoadAudio node. The node mixes it to mono internally, so don't expect your stereo bed to survive.
  • cfm_nfe - number of function evaluations for the ODE solver (1–128, default 64). More = better quality and slower. Leave it at 64 unless a clip sounds thin.
  • cfm_prior_temperature - sampling randomness (0–1, default 0.5). Higher can sound more natural but less stable; 0.5 is the sweet spot.
  • denoise_before_enhancement - the one you'll actually flip. Off by default; turn it on for clips with heavy background noise. Mechanically it raises how strongly the denoiser's output steers the enhancement.
  • cfm_solver - Midpoint, RK4, or Euler. Midpoint is the recommended default; you have no reason to change it.

Wiring and output

The single output, enhanced_audio, is an AUDIO type, so it plugs straight into a SaveAudio node (or anything else that accepts audio). The example workflow in the repo is exactly that: LoadAudio → ResembleEnhance → SaveAudio. It outputs mono at 44.1kHz, and it processes audio in ~30-second chunks with cross-fading so long clips don't blow up memory.

Installing

Easiest via ComfyUI Manager - search "Resemble Enhance". Or the manual route:

cd ComfyUI/custom_nodes
git clone https://github.com/EuphoricPenguin/resemble-enhance-comfyui
cd resemble-enhance-comfyui
pip install -r requirements.txt

Then restart ComfyUI. The requirements list is mostly stuff ComfyUI already ships (torch, torchaudio, numpy, librosa, soundfile, omegaconf, accelerate), so the install is usually painless. The model weights download automatically from HuggingFace on first run into the node's models/ folder - no key needed, just a working internet connection.

Where people get burned

The big one is silent pass-through. If the model download fails or the enhancement errors, this node logs to the console and returns your original audio unchanged rather than raising an error. You can polish away happily and save an unenhanced file without knowing. Check the ComfyUI console after the first run - you should see model download progress, then "Starting Resemble Enhance Inference". If that last line never appears, the node bailed.

Also remember every custom node executes arbitrary Python with your user permissions, and there's no review process before install. For a pack this young, that's a good reason to eyeball the source (it's short) before you trust it with your pipeline.

Categoryaudio

Inputs (5)

NameTypeDefaultDescription
audioAUDIO
cfm_solverCOMBOMidpoint3 options: Midpoint, RK4, Euler
cfm_nfeINT641–128
cfm_prior_temperatureFLOAT0.500–1
denoise_before_enhancementBOOLEANfalse

Outputs (1)

NameTypeDescription
enhanced_audioAUDIO