IndexTTS 2.5 参考音频质量检测 · T8star-Aix
Why your clone sounds bad (and the node that tells you)
- audio
- 检测/优化后的参考音频
- 质量报告 JSON
- 参考音频波形
Every voice-cloning model has the same dirty secret: the reference audio is 80% of the result. Feed IndexTTS a clip with three seconds of room tone before the voice starts, a clipped loud word, or a soundtrack bleeding through, and the clone inherits all of it. The pack's quick-start says the obvious thing - clean, single speaker, no background music, 3–10 seconds - but nothing in ComfyUI was telling you whether your clip actually qualifies. 参考音频质量检测 is that honesty check.
It measures what makes a reference good or bad: duration, leading and trailing silence, silence ratio, loudness, clipping, estimated signal-to-noise ratio, and DC offset. Then, if you want, it fixes the two problems you can't fix by ear: it trims the silence off the ends, and if your clip is too long it selects the most energy-dense segment rather than keeping the first 15 seconds whatever they are.
How it works
The node runs analyze_reference_audio over the waveform for the quality metrics, then - with auto_prepare on, the default - prepare_reference_audio trims silence and picks the segment. maximum_seconds caps what survives (default 15, which matches the pack's own "over 15s gets truncated" rule), and silence_padding_ms (default 150) keeps a little natural room at the cut edges instead of slicing the voice mid-breath. The prepared clip is what you'd actually want feeding the model loader.
The outputs are the useful part: the prepared_audio itself, a full quality_report JSON with every measured metric, and a rendered waveform_image you can wire into a Preview Image node to see the clip's shape - silence bars at the ends and clipped flat-tops are visible at a glance.
The inputs that matter
auto_prepare- keep it on. Turning it off leaves the clip untouched and only reports, which is useful if you just want the diagnosis without the edit.maximum_seconds- 3–30. Lower it for tighter references; the model works fine with 3–5 clean seconds.silence_padding_ms- leave at 150 unless you're cutting speech you can hear is being chopped.
Where it fits
Put it in front of the model loader, between Load Audio and the reference input - Load Audio → this node → 模型加载器 reference. One queue run tells you whether the clip is the problem, and if it is, hands you a cleaned version to use instead. It's also genuinely useful for auditing a voice bundle you got from someone else, since a .t8voice.zip quality report only says what the export measured.
Installing
Standard pack install: ComfyUI Manager → IndexTTS 2.5 · T8star-Aix, or git clone https://github.com/T8mars/comfyui-indextts25-t8.git into custom_nodes/, restart. No extra dependencies - it's pure waveform math on the AUDIO input, no model needed, so it works even before you've downloaded the 7.7 GiB weights. That's the right tool to reach for when the clone sounds off and you want to rule out the input before touching the sampler.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| auto_prepare | BOOLEAN | true | — |
| maximum_seconds | FLOAT | 15.03–30 | — |
| silence_padding_ms | INT | 1500–1000 | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| 检测/优化后的参考音频 | AUDIO | — |
| 质量报告 JSON | STRING | — |
| 参考音频波形 | IMAGE | — |