Nodes/Speech-God/Speech-God Character
ComfyUI Node

Speech-God Character

A repeatable character voice from sliders, not just a sample

By realTNEU·Created 3 months ago·Updated 3 months ago· 0
Speech-God Character
  • voice_reference
  • emotion_reference
  • emotion_blend
  • character
character_nameCharacter
genderneutral
ageadult
toneneutral
energy50
speech_speed1.00
accent_strength0
style_prompt
scene_context
reference_text
laugh0
whisper0
nervousness0
confidence0
dramatic_intensity0
sarcasm0
cuteness0

Speech-God's whole pitch is "ElevenLabs-style control, fully local" - and Speech-God Character is where that pitch actually lives. In a plain TTS setup you get one cloned voice and that's it. Here you define a full character profile - gender, age, tone, energy, delivery quirks - and every line that character speaks comes out consistent and distinct, episode after episode. It's the difference between "a voice" and "a character with a voice."

The key idea, worth internalizing early: every voice still starts from reference audio - both engines are zero-shot cloners. The profile is what layers personality on top. The character carries an optional voice_reference (any AUDIO - load it with ComfyUI's Load Audio node), and a bunch of parameter knobs that get converted into pitch shifts, tempo changes, gain, inline emotion markers and natural-language style fragments before synthesis. That's the "prompt conditioning + DSP" layer the README mentions: age, gender and tone each contribute semitones and tempo, the micro-sliders add style text and markers, and a post-pass does the pitch/gain shaping.

The inputs that actually matter

Start with these five and ignore the rest on day one:

  • character_name - must match the tag you'll use in your script ([SQUIRREL] ↔ name SQUIRREL, case-insensitive). Get this wrong and lines route to the wrong character.
  • tone - twelve choices from neutral to happy, angry, evil, narrator. Each maps to a pitch/tempo/gain recipe plus a style fragment and (for the fish engine) an inline marker.
  • age - child through elderly, which stacks pitch on top of tone. Careful: extreme combos compound (the README flags child+excited as roughly +7 semitones - that's how you get chipmunks).
  • energy (0–100, default 50) and speech_speed (0.5–2.0) - the two knobs that change a delivery most without sounding artificial.
  • voice_reference (optional AUDIO) - plug a 5–15 s WAV here for actual cloning. Leave it empty and the pack falls back to a bundled reference voice, so parameter-only characters work out of the box - just shared and neutral.

The optional extras are where this node earns its name: style_prompt (free-form delivery description), scene_context (e.g. "in a crowded market"), reference_text (the transcript of your voice reference - fill this in to skip Whisper's auto-transcription and save ~1.5 GB VRAM and a slow first run), emotion_reference (a clip whose pacing and emotion you want cloned), and an emotion_blend socket for the Emotion Blend node. Then there are the seven micro-expression sliders: laugh, whisper, nervousness, confidence, dramatic_intensity, sarcasm, cuteness, all 0–100. At 25+ a slider adds its style fragment; at 50+ it also adds a marker on fish-speech.

Output is a single character wire (SPEECHGOD_CHARACTER) - feed it into Speech-God Cast to group it with others, or straight into Save/Load Character to keep it across projects.

Installing and running

Same pack, same drill as every Speech-God node: Manager search "Speech-God", or git clone https://github.com/realTNEU/ComfyUI-SpeechGod into custom_nodes, then install requirements.txt into the ComfyUI venv and restart. The F5-TTS model (~1.4 GB) auto-downloads on first generation.

Gotchas worth knowing

  • Robotic or wrong-pitch output - your age+tone combo is stacking too much pitch. Drop the micro sliders and reduce energy before you blame the model.
  • "Cloned voice ignores emotion" - F5-TTS follows the reference's emotion; your tone sliders add delivery but the base voice stays the reference's mood. Fix: attach an emotion_reference clip, or switch to fish-speech where markers actually act.
  • "no voice reference available" - this error only means f5-tts isn't importable. If it is, the bundled default voice handles parameter-only characters; drop your own seed WAVs into assets/default_voices/ for distinct defaults.
  • License asterisk: F5-TTS weights are CC-BY-NC (non-commercial). Fine for personal work; check before this goes anywhere commercial.
CategorySpeech-God

Inputs (20)

NameTypeDefaultDescription
character_nameSTRINGCharacter
genderCOMBOneutral3 options: female, male, neutral
ageCOMBOadult5 options: child, teen, young_adult, adult, elderly
toneCOMBOneutral12 options: neutral, happy, sad, excited, angry, scared, +6
energyINT500–100
speech_speedFLOAT1.000.5–2
accent_strengthINT00–100
voice_referenceoptAUDIO
emotion_referenceoptAUDIO
emotion_blendoptSPEECHGOD_EMOTION
style_promptoptSTRING
scene_contextoptSTRING
reference_textoptSTRINGTranscript of the voice reference (improves cloning; F5 auto-transcribes when empty)
laughoptINT00–100
whisperoptINT00–100
nervousnessoptINT00–100
confidenceoptINT00–100
dramatic_intensityoptINT00–100
sarcasmoptINT00–100
cutenessoptINT00–100

Outputs (1)

NameTypeDescription
characterSPEECHGOD_CHARACTER