Audio Cleaner
Fix reverb and noise in your TTS output
- audio
- enhanced_audio
TTS output isn't always clean. Clone a voice from a reference clip that has any room echo or background hiss, and IndexTTS tends to carry a bit of that character into the generated audio - you get speech, but it sounds like it was recorded in a stairwell, or there's a faint hum sitting under it. Audio Cleaner exists specifically to fix that: chain it right after any of the Index TTS / IndexTTS-2 nodes and it denoises, de-reverbs, filters the frequency extremes, and normalizes the loudness of whatever came out.
It's a one-node mastering pass, not a general-purpose audio tool - it was built and tuned for cleaning up this pack's own TTS output, not for scrubbing arbitrary recordings. If you're getting muddy or echoey generations and don't want to re-record your reference clip, this is the cheap fix to try first.
Inputs and outputs that matter
Required: audio (the TTS output you're cleaning up), denoise_strength (0.1–1.0, default 0.5 - higher removes more background noise but can start eating into natural voice texture if you push it too far), dereverb_strength (0.0–1.0, default 0.7 - higher pulls out more room echo, useful when your reference audio was recorded somewhere with hard walls).
Optional: high_pass_freq (20–500Hz, default 100 - filters out low-frequency rumble like room hum or mic handling noise), low_pass_freq (1000–16000Hz, default 8000 - filters high-frequency hiss), and normalize (true/false, default true - evens out the volume so quieter and louder sentences in the same generation don't jump around).
Output: a single enhanced_audio - wire it into a Save Audio or Preview Audio node, or straight into whatever consumes the clip next.
The author's own tuning advice, worth following before you start guessing: for audio with obvious reverb, push dereverb_strength to 0.7–0.9; for audio with background noise, push denoise_strength to 0.5–0.8; and if the cleaned result starts sounding artificial or over-processed, back both values down rather than up - that's the tell you've gone too far.
Install
ComfyUI Manager: search ComfyUI-Index-TTS, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/chenpipi0807/ComfyUI-Index-TTS.git
cd ComfyUI-Index-TTS
pip install -r requirements.txt
No separate model download - this node runs on the pack's Python dependencies alone, nothing extra to fetch. It works standalone from any of the TTS nodes in this pack, so if you already have the base install working, Audio Cleaner just works.
Where people get burned
The main mistake is over-cleaning: cranking both denoise_strength and dereverb_strength toward 1.0 because the audio still isn't perfect. Past a certain point that trades one artifact (echo, hiss) for another (a processed, slightly robotic texture), and it's a much easier problem to hear than to describe - if a cleaned clip sounds "off" in a way you can't quite name, that's usually it. The second thing worth knowing: this node cleans up what came out of the TTS node, it doesn't fix a bad reference clip going in. If your generated voice sounds wrong in identity or delivery rather than just noisy, the fix is a cleaner reference audio, not a heavier Audio Cleaner pass - the two problems look similar but live in different places in the pipeline.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| denoise_strength | FLOAT | 0.500.1–1 | — |
| dereverb_strength | FLOAT | 0.700–1 | — |
| high_pass_freqopt | FLOAT | 10020–500 | — |
| low_pass_freqopt | FLOAT | 80001000–16000 | — |
| normalizeopt | COMBO | true | 2 options: true, false |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| enhanced_audio | AUDIO | — |