Nodes/ComfyUI-Breeze-TTS-2/Breeze TTS 2 Whisper Transcribe
ComfyUI Node

Breeze TTS 2 Whisper Transcribe

The transcript helper that saves your voice clones from yourself

By Saganaki22·Created 4 days ago·Updated a day ago· 32
Breeze TTS 2 Whisper Transcribe
  • audio
  • audio
  • transcript
modelwhisper-large-v3-turbo
dtypeauto
languageauto
tasktranscribe
chunk_length_s30
download_if_missingtrue

Every voice-cloning guide in this pack says the same thing: the transcript of your reference clip has to be exact. A wrong word quietly degrades the clone. This node exists to make that easy - it runs OpenAI's Whisper on your reference audio and hands you back the transcript, so you're not hand-typing it and hoping.

It's the unglamorous node in the pack, and honestly that's the point. Cloning is the hard job in local TTS, and the transcript is the most common way to sabotage it. This node removes that failure mode with two clicks.

How it works

It wraps the Hugging Face Whisper pipeline and transcribes whatever AUDIO you feed it. The default model is whisper-large-v3-turbo, which is the sensible pick - near-large quality at a fraction of the compute. Models are cached in memory after first use, download on demand into ComfyUI/models/audio_encoders/, and the node passes your audio straight through so you can wire it in-line without a detour.

You'll notice this node rarely appears on its own in a workflow - the Speaker node calls it internally when you leave a transcript empty with auto-transcription on. Wiring the two explicitly (convert reference_text to an input, connect the transcript) just gives you control and visibility over what Whisper heard.

The inputs that matter

  • audio - the clip to transcribe. Your reference audio for cloning.
  • model - six Whisper sizes from whisper-large-v3-turbo down to whisper-tiny. Unless your reference is in a rare language or very noisy, the turbo default is right; the tiny models are only for CPU-bound trims.
  • language - auto detects it, but if Whisper keeps mangling a language it should know, pin it (chinese, japanese, korean, etc. are listed).
  • task - transcribe keeps the source language; translate writes English. Only set translate if you actually want an English transcript of foreign audio.
  • chunk_length_s - 30 by default; set 0 to use the pipeline default, raise it for very long inputs.
  • download_if_missing - leave on; it pulls the Whisper weights from Hugging Face on first run.

The outputs are audio (an unchanged passthrough of what you fed it) and transcript (the text string). Transcript is what you wire into a Speaker's reference_text or a Voice Clone's reference_text.

Installing and troubleshooting

Same pack, same story:

cd ComfyUI/custom_nodes
git clone https://github.com/saganaki22/ComfyUI-Breeze-TTS-2

or ComfyUI Manager → search "ComfyUI-Breeze-TTS-2", restart. Whisper weights download separately from the Breeze model - first transcription pulls a chunk of a GB into ComfyUI/models/audio_encoders/, so don't panic when the first run is slow.

Realistic gotchas: background music or a second voice in the reference makes Whisper transcribe garbage, and then your clone inherits the garbage - clean source audio is not optional. For very accented or technical speech, pinning language beats auto-detection. And a tip from the Speaker node's tooltip: check the console log after auto-transcription, because a wrong auto-transcript is still a wrong transcript. Whisper gets you 95% of the way; you're the last 5%.

CategoryBreeze TTS 2

Inputs (7)

NameTypeDefaultDescription
audioAUDIOAudio to transcribe (e.g. the reference clip used for cloning).
modelCOMBOwhisper-large-v3-turboWhisper model used for transcription.
dtypeCOMBOautoCompute dtype for Whisper.
languageCOMBOautoSpoken language hint; auto detects it.
taskCOMBOtranscribetranscribe keeps the source language; translate writes English.
chunk_length_sINT300–120Chunk length in seconds for long inputs (0 uses the pipeline default).
download_if_missingBOOLEANtrueDownload the Whisper model from Hugging Face when missing locally.

Outputs (2)

NameTypeDescription
audioAUDIO
transcriptSTRING