Nodes/comfyui-indextts25-t8/IndexTTS 2.5 角色音色 · T8star-Aix
ComfyUI Node

IndexTTS 2.5 角色音色 · T8star-Aix

Bundle a reference clip into a named voice, so multi-role works

By T8mars·Created 14 days ago·Updated a day ago· 25
IndexTTS 2.5 角色音色 · T8star-Aix
  • speaker_audio
  • emotion
  • 角色音色
  • 音色信息
role_name旁白
languageZH

Single-clip cloning is easy in IndexTTS 2.5 - that's the Generate node. The hard part comes the moment you want two characters in one audio file: suddenly you need a way to say "voice A speaks line 1, voice B speaks line 2" without re-plumbing audio clips everywhere. This node is that glue. It takes a role name, a reference clip, a default language, and an optional emotion, and wraps them into a single T8_INDEXTTS25_VOICE value - a named, reusable character that the rest of the multi-role flow understands.

What you set

  • role_name - the name your script will reference. Whatever you put here is what you type in the batch script's 角色 field (or the [角色] prefix in SRT). Keep it consistent; the pack refuses duplicate role names downstream rather than guessing.
  • speaker_audio - the standard ComfyUI AUDIO from Load Audio. Same advice as the main Generate node: 3–10 seconds, clean, single speaker, no music. This is the voice's identity.
  • language - the default language for lines that don't specify one.
  • emotion (optional) - connect an emotion control node and that mood becomes the character's default. This is the per-role emotion wiring: emotion A → voice A, emotion B → voice B, and each character's lines pick up their own mood without it leaking into the other character's audio.

Outputs: 角色音色 (the voice value to feed into the role library) and 音色信息, a string describing what got packaged.

Where it fits

The README's multi-role shape is: one Voice Profile per character → all of them into the role library node (or its Merge Voice Emotions alias) → that library into the multi-role/SRT generation node, alongside a dialogue script. The voice profile is the "cast member" - you can swap a reference clip to recast a character without touching the script at all, which is the workflow trick worth internalizing. Do your voice tuning here, at the cast level, not per-line.

Realistic expectations

This node is trivial mechanically - it packages data, it doesn't synthesize. Everything that matters is upstream (the reference clip quality, the emotion wiring) and downstream (the dialogue generation). Don't expect the voice profile to "do" anything on its own; it's the typed container that makes the multi-role pipeline possible. Its real value is organizational: named roles, per-role defaults, and a clean cast list you can inspect and reorder.

Notes

No separate install - it ships with the pack (Manager search IndexTTS 2.5 · T8star-Aix or the repo clone), and it has no model load of its own. If you're building a workflow from scratch and only need one voice, you can skip this node entirely and wire Load Audio straight into Generate. Reach for it the moment your script has a second 角色 - that's when the organizational overhead pays for itself.

CategoryT8star-Aix/Audio/IndexTTS 2.5

Inputs (4)

NameTypeDefaultDescription
role_nameSTRING旁白
speaker_audioAUDIO
languageCOMBOZH5 options: ZH, EN, JA, ES, AR
emotionoptT8_INDEXTTS25_EMOTION

Outputs (2)

NameTypeDescription
角色音色T8_INDEXTTS25_VOICE
音色信息STRING