Nodes/ComfyUI-IndexTTS2/IndexTTS2 Save Audio
ComfyUI Node

IndexTTS2 Save Audio

Gets your TTS onto disk at the quality you actually picked — and plays it back right on the node

By snicolast·Created 12 months ago·Updated 11 months ago· 212
IndexTTS2 Save Audio
  • audio
    nametts2
    formatwav
    normalize_peakfalse
    wav_pcmpcm16
    mp3_bitrate320k

    IndexTTS2 Save Audio exists because of a real complaint. Early users of this pack found their output was landing as low-bitrate lossy audio with audible digital defects - a warble on top of an otherwise good take. The author's fix was a proper save node that writes what you actually asked for and, as a bonus, embeds a player right on the node so you can preview a take without fishing through your output folder. It's the node you'll usually put at the end of an IndexTTS2 graph.

    How it works

    It's an output node: it takes the AUDIO tensor from IndexTTS2 Simple or Advanced and writes it to disk inside Comfy's output directory, under output/audio/. WAV files are written directly with soundfile - your choice of PCM16, PCM24, or 32-bit float - and MP3 is handed off to Comfy's own built-in MP3 saver. After execution, a bit of front-end JavaScript (the pack ships a web/ directory) reads the saved file and drops an inline <audio> player overlay on the node, so you can audition the take in place.

    The inputs

    • audio - the AUDIO tensor from a synthesis node.
    • name - the file name prefix, default tts2. Files come out numbered, so batch runs stay sorted.
    • format - wav or mp3. This is where the quality decision lives.
    • normalize_peak - off by default; the tooltip says it all: "Normalize peak to ~0.98 before saving." Flip it if your output is quiet and you don't want to touch gain.
    • wav_pcm - pcm16 / pcm24 / f32. If you care about keeping the take lossless, f32 is the one.
    • mp3_bitrate - 128k to 320k, default 320k.

    The honest quality talk

    This is the part worth a minute. The model itself only produces 22.05kHz mono, so no save setting will give you 48kHz - that's baked in upstream. What you can control is compression, and the community's testing found the choices matter: f32 WAV is effectively lossless and matches what the original Gradio demo writes, while MP3 has quirks - one tester reported the actual saved bitrate coming out lower than the selected 320k, which looks like a ComfyUI/PyAV behavior rather than this node's bug. Practical rule: if quality is the priority, save WAV f32; if you need small files, MP3 at 320k and accept the compression. And for FLAC, the author's own note is to just use Comfy's built-in audio save node - this one deliberately sticks to wav/mp3.

    Install and troubleshooting

    No separate install - it ships in the pack. One heads-up: it's the pack's only output node, so Comfy shows it as a terminal node; if you hang anything off it, you've missed the point. If a preview doesn't appear after a run, the file still saved - check output/audio/ - and the player needs the pack's web/ folder intact, so don't delete it to "clean up." Low volume on the saved file? That's the output_gain knob on the synthesis node (or normalize_peak here), not a save bug.

    CategoryAudio/IndexTTS

    Inputs (6)

    NameTypeDefaultDescription
    audioAUDIO
    nameSTRINGtts2
    formatCOMBOwav2 options: wav, mp3
    normalize_peakoptBOOLEANfalseNormalize peak to ~0.98 before saving.
    wav_pcmoptCOMBOpcm163 options: pcm16, pcm24, f32
    mp3_bitrateoptCOMBO320k4 options: 128k, 192k, 256k, 320k

    Outputs (0)

    No outputs