ParlerTTS_Sampler
ParlerTTS_Sampler turns text and a description into speech
- model
- audio
This is the node that makes the pack worth installing. ParlerTTS_Sampler takes a script and a written description of a speaker and returns audio - no API key, no cloud, no voice samples. "A female speaker with a slightly low-pitched voice, quite expressive, speaking very fast in a clear, confined-sounding environment" isn't a prompt you feed it, it's the voice prompt. Parler-TTS is one of the few models that steers the speaker from natural language instead of a reference clip, and this node wraps that in the two cleanest text boxes in ComfyUI.
If you've got a talking-head or narration workflow, this slots in where a file player would sit: model in from ParlerTTS_LoadModel, text in, audio out, then straight into a Save Audio node or VideoHelperSuite if you're building a video track.
How it works
Under the hood it's Parler-TTS's own generation loop. The node tokenizes your description and your prompt separately, then calls model.generate() with the description as the conditioning input and the prompt as what to say. The model predicts audio in a discrete token space - the Descript Audio Codec (DAC) tokens - and the built-in DAC decoder turns those tokens back into a raw 16 kHz waveform. That's why the pack can ship with no audio-codec dependency at all: the decoder is vendored inside the repo, and older versions of the pack that did require descript-audio-codec are exactly the ones people reported dependency hell with.
The generation uses the model's defaults, so there's deliberately nothing to tune here. No seed, no temperature, no speed slider. You get what the checkpoint's decode gives you, and for the mini models that's decent, natural-ish speech - community verdict from people who actually ran it: "outputs are actually not bad at all." It's not a clone tool and it's not SOTA, but for a lightweight local TTS it punches fine.
The inputs that matter
- model - the
PTTSMODELfrom ParlerTTS_LoadModel. Nothing else fits. - prompt - the words to speak. Multiline, so paste a whole script.
- description - the interesting one. Describe the speaker: gender, pitch, pace, emotion, recording environment, audio quality. More specific gets you closer to what you imagined.
Output is a single audio socket (AUDIO), the standard ComfyUI audio format - a waveform plus sample rate. It feeds ComfyUI's built-in Save Audio / Preview Audio, or VHS if you're muxing into video.
The two gotchas that actually bite
First, if you load the parler-tts-mini-jenny-30H checkpoint, your description must include the word "Jenny". The README is explicit about it, and it's the kind of thing that makes you think the node is broken when it's just being literal about its training data.
Second, and this is the trap people hit hardest: Parler-TTS does not clone voices. A description controls style - gender, pitch, pacing - but not identity. If you want a specific person's voice, you want XTTS or an RVC pipeline instead. Parler is for "give me a confident female narrator with clear audio," not "give me Scarlett Johansson." Set that expectation before you build a whole workflow around it.
Installing it
From ComfyUI Manager, search for ComfyUI_ParlerTTS; or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/smthemex/ComfyUI_ParlerTTS.git
pip install -r requirements.txt
Restart, and the first run downloads the checkpoint before the Sampler will do anything. If a future transformers update breaks generation, the README's known issue (transformers > 4.53.0 causing errors, patched July 2025) is the first thing to suspect. And if you're on CPU-only, it works - but "works" is doing a lot of work there; be patient.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| model | PTTSMODEL | — | |
| prompt | STRING | Hey, how are you doing today? | — |
| description | STRING | A female speaker with a slightly low-pitched voice delivers her words quite expressively, in a very confined sounding environment with clear audio quality. She speaks very fast. | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | — |