Nodes/ComfyUI-QwenTTS/Whisper STT (QwenTTS)
ComfyUI Node

Whisper STT (QwenTTS)

Transcribe your reference clip so your voice clone actually works

By 1038lab·Created 7 months ago·Updated 7 months ago· 249
Whisper STT (QwenTTS)
  • audio
  • text
model_sizesmall
languageauto
unload_modelstrue

Voice cloning in this pack has one annoying dependency: a word-accurate transcript of your reference clip. Hand-typing it is tedious, and a sloppy transcript is a fast path to a garbled clone. Whisper STT (QwenTTS) is the pack's shortcut - drop in an AUDIO clip, get a STRING transcript out, feed it straight into Voice Clone (QwenTTS) or Create Voice (QwenTTS). It's speech-to-text glued into the same pipeline, and it closes the loop on "clone this voice" without you typing a word.

How it works

Under the hood it's OpenAI's Whisper (the openai-whisper package, not the API) running locally through whisper.load_model. The node takes your AUDIO, writes it to a temp WAV file, runs Whisper's transcribe on it, and returns the detected text. It runs on CUDA if available, else MPS, else CPU, and caches the loaded Whisper model so repeated transcriptions don't reload it.

The inputs

  • audio (AUDIO) - the clip to transcribe. Feed it from any audio source or another node.
  • model_size - tiny, base, small, medium, large, large-v2, large-v3, or large-v3-turbo. Default is small - the tooltip's own advice: bigger is slower but more accurate. For cloning, you want a good transcript, so small/medium is a sane default; tiny will mangle words and give your clone a bad transcript.
  • language - auto or force one of the ten (en/zh/ja/ko/de/fr/es/it/pt/ru). If you know the language, forcing it is more reliable than auto.
  • unload_models (default true) - frees Whisper from RAM after each transcription; keep it on unless you're batching a folder of clips.

Output: a single text (STRING), the transcript.

Install

Same pack, one extra gotcha. Install the pack:

cd ComfyUI/custom_nodes && git clone https://github.com/1038lab/ComfyUI-QwenTTS.git
python3 -m pip install -r ComfyUI/custom_nodes/ComfyUI-QwenTTS/requirements.txt

And here's the trap: openai-whisper needs ffmpeg on your system (it shells out to it to decode audio). On Linux sudo apt install ffmpeg; on macOS brew install ffmpeg; on Windows install it via winget/Chocolatey or add the bundled ffmpeg to PATH. The pip install does not bring ffmpeg, and the failure mode is a cryptic error at transcription time. This bit more than one person setting up the pack.

When you'd reach for it

The designed workflow is: reference clip → Whisper STT → transcript → (Create Voice or Voice Clone). Because Qwen3-TTS aligns the reference's speech tokens to the transcript, an accurate auto-transcript beats a hand-typed one that's close-but-wrong - the model is unforgiving of mismatch. It's also handy beyond cloning: subtitle a clip, or transcribe a scratch voice note to text for prompt work. It's a supporting player, not the star, but it's the difference between a clone workflow that works and one that "never works."

Category🧪AILab/🎙️QwenTTS

Inputs (4)

NameTypeDefaultDescription
audioAUDIOAudio input to transcribe.
model_sizeCOMBOsmallWhisper model size. Larger models are slower but more accurate.
languageCOMBOautoForce language or use auto detection.
unload_modelsoptBOOLEANtrueUnload cached models after transcription

Outputs (1)

NameTypeDescription
textSTRING