Voxtral TTS Fixed Voice
30 preset voices, zero setup
- audio
If you want a decent synthetic voice in ComfyUI without hunting for a reference clip or signing up for anything, this is the node. Voxtral TTS Fixed Voice gives you 30 preset voice-and-emotion combos from Mistral's Voxtral TTS model, and your entire job is to type text and pick one. That's it - no key, no model download, no GPU.
Same caveat that applies to its sibling Voxtral TTS Voice Clone: this node doesn't run inference locally. It's a thin wrapper that calls Mistral's public Hugging Face demo Space over the internet with gradio_client and hands the synthesized result back as a ComfyUI AUDIO object. The "fixed voice" in the name means the voices are locked presets rather than clones - for a custom voice you'd use the Clone node, but for a quick narration, a game line, or testing, these presets are plenty and much less fiddly.
The two inputs
Only two, both easy:
text- multiline string. Defaults to "Frontier AI in your hands.", so type over it.voice- a dropdown of 30 presets, each a speaker plus an emotion: "EN - Jane, Curious", "FR - Marie, Angry", and so on.
The one thing that trips people up: emotion isn't a separate parameter. It's baked into the preset name, and the code maps each label to an internal ID (gb_jane_curious, en_paul_neutral...). Want Jane to stop being sarcastic? Don't look for an emotion slider - pick a different combo.
The voices break down as:
- EN - Jane - 9 emotions (Sarcasm, Confused, Shameful, Sad, Neutral, Jealousy, Frustrated, Curious, Confident)
- EN - Paul - 8 (Sad, Neutral, Happy, Frustrated, Excited, Confident, Cheerful, Angry)
- EN - Oliver - 7 (Neutral, Sad, Excited, Curious, Confident, Cheerful, Angry)
- FR - Marie - 6 (Sad, Neutral, Happy, Excited, Curious, Angry)
The output is a single AUDIO socket, which you can route into PreviewAudio to hear it, SaveAudio to write a file, or straight into a video pipeline. The bundled example workflow is just VoxtralTTSFixed → PreviewAudio, and that's genuinely all it takes to get sound out of your graph.
Install
# ComfyUI Manager: Custom Nodes Manager → search "voxtral" → Install → restart
cd ComfyUI/custom_nodes
git clone https://github.com/marduk191/comfyui-voxtral
pip install -r requirements.txt # gradio_client + soundfile
Restart, then find both nodes under audio/voxtral. Dependencies are as light as they get for a custom node: gradio_client and soundfile, with torch already present from ComfyUI. No models to download, which is refreshing in a pack ecosystem where half the install pain is file management.
Worth knowing before you rely on it
- It's a remote call, not local inference. No internet, no audio. That's the first troubleshooting step, always.
- It can be slow. The demo Space runs the 4B model on CPU, and a first run can sit for a bit. Patience, then panic.
- It's a demo Space with hardcoded endpoints. If Mistral changes or gates it, the pack breaks - it's a wrapper, not a local model. For a hobbyist, that's fine; for a production pipeline, it's a dependency on someone else's free tier.
- Preset quality is "decent, not mind-blowing." That's the honest community read on Voxtral's stock voices - fine for narration and tinkering, not a ElevenLabs replacement.
If the presets don't have the voice you need, the pack's Clone node takes a 5–30 second reference clip instead. Otherwise, this is the zero-friction option: text in, audio out, no setup ceremony.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | Frontier AI in your hands. | — |
| voice | COMBO | EN - Jane, Curious | 30 options: EN - Jane, Sarcasm, EN - Jane, Confused, EN - Jane, Shameful, EN - Jane, Sad, EN - Jane, Neutral, EN - Jane, Jealousy, +24 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | — |