ComfyUI Node

Inworld TTS-1.5 Mini

The fast, cheap voice for first passes

By Runware·Created 2 years ago·Updated about a month ago· 140
Inworld TTS-1.5 Mini
  • speech
  • audioSettings
  • audio
numberResults1
settings.temperature1.10
settings.textNormalizationfalse
ttlfalse
ttl_value60
outputFormatMP3

Narration is a draft most of the time. You don't want the best voice model in the world for the fifth revision of a script you're still cutting; you want something fast and cheap that proves the timing works. Inworld TTS-1.5 Mini is exactly that - the lighter sibling of the 1.5 Max voice node, and structurally identical to it.

It's a hosted TTS model served through Runware, so it lives in your ComfyUI graph as a proper node with an AUDIO output rather than a hand-rolled API call. The pitch: use Mini to iterate on scripts and timing, swap in Max (or the realtime TTS-2) for the final render. Same family, same voices, lower bill.

How it works

The required input is a speech socket of type RUNWARE_SPEECH - the text and voice live upstream in a Runware Speech builder, not on this node. In that builder you set your text (with [Sam] Hello [Bob] Hi there style tags for dialogue, plus markup like [laughs] or [short pause]), pick a voice from the named dropdown (Zephyr by default), and optionally set speed, volume, and language.

On the model node itself: settings.temperature (0.1–2, default 1.1) tunes expressiveness - lower for flat, deterministic reads, higher for animated delivery. settings.textNormalization expands numbers and abbreviations ("Dr." → "doctor") before generation, which you want for prose and not for product codes. numberResults tops out at 4, and outputFormat is MP3/WAV/FLAC/OGG. The Runware Audio Settings builder wires into audioSettings if you need specific channels, bitrate, or sample rate.

Output is a ComfyUI AUDIO value (waveform + sample rate), decoded locally with soundfile - straight into a Save Audio node, exactly like the pack's audio workflow.

Installing it

Same official pack:

cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt

Restart, then set your API key in ComfyUI Settings → Runware API key or via RUNWARE_API_KEY. Requirements include soundfile for audio decode - nothing heavier.

Where people get burned

The schema is a copy-paste of Max, so the only real decision is which node you're using - and people forget Mini is the budget lane, then wonder why a hero VO track sounds less polished than the Max render next to it. That's not a bug; that's the tiering. And the pack-standard reminders: the text lives in the Runware Speech builder, not here, and this is a metered API - Mini is cheap, but numberResults of 4 across twenty script versions is still charges accumulating.

CategoryRunware/Audio/inworld

Inputs (8)

NameTypeDefaultDescription
speechRUNWARE_SPEECH
audioSettingsoptRUNWARE_AUDIOSETTINGS
numberResultsoptINT11–4Number of results to generate. Each result uses a different seed, producing variations of the same parameters.
settings.temperatureoptFLOAT1.100.1–2Controls randomness in generation. Lower values produce more deterministic outputs, higher values increase variation and creativity.
settings.textNormalizationoptBOOLEANfalseExpands numbers, dates, abbreviations before speech generation.
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOMP3File format for the generated audio.

Outputs (1)

NameTypeDescription
audioAUDIO