Whisper Turbo Run
Turn any audio into subtitles inside ComfyUI — Whisper Turbo Run
- audio
- json_text
- subtitle_text
Whisper Turbo Run is the subtitle-maker of this two-node pack. Its sibling (EraX WoW Run) just transcribes; this one runs OpenAI's actual large-v3-turbo Whisper checkpoint and hands you two string outputs - json_text with the segment data and subtitle_text with lines formatted like [00:12.340]text. Plug an audio socket in, get subtitle text out. That's the whole sell, and for a lot of people it's the whole reason to install the pack.
Why reach for this instead of the EraX node? Timestamps. If you're making subtitles, burning captions, or syncing text to a video track, you need start times, and this is the node that gives them. If you just want the words fast and don't care about timing, the other node is simpler. They share one install, so trying both costs you nothing.
How it works
It wraps the openai-whisper package and calls transcribe() the way the whisper command line does - which means writing your audio tensor out to a temp wav first (that's what the internal cache_audio_tensor helper does), then running Whisper's standard pipeline: detect language, transcribe, filter junk. The two float thresholds - logprob_threshold (-0.1 default) and no_speech_threshold (0.1 default) - are Whisper's built-in hallucination guards; segments that look like silence or low-confidence filler get dropped. When word timestamps are on, it also re-splits the transcript into sentences by punctuation (or by a words-per-line cap), so each subtitle line stays readable.
The inputs that matter
audio- anAUDIOsocket from any audio loader or video pipeline.timestamp- the master switch. Off (the default) means you just get plain concatenated text back, andword_timestampsis silently ignored. Turn it on to get timed output.word_timestamps- word-level timing, grouped into sentences. Only does anything whentimestampis on.max_num_words_per_page- max words per subtitle line when word timestamps are enabled; default 24.initial_prompt- a hint Whisper uses to bias style and spelling. The default is Chinese ("如果中文则严格使用简体中文"), so for English audio you'll probably want to swap it for a vocabulary or spelling hint.unload_model-trueby default; frees VRAM after every run.
Two outputs: json_text (a STRING of the raw segment or word data, save it if you want the structured version) and subtitle_text (the [MM:SS.mmm] lines, ready to save as a sidecar subtitle file).
Install
Same pack as the EraX node - ComfyUI Manager, search MW-ComfyUI_EraX-WoW-Turbo, or:
cd ComfyUI/custom_nodes
git clone https://github.com/billwuhao/ComfyUI_EraX-WoW-Turbo.git
Restart, then grab the model: the ~1.6 GB large-v3-turbo.pt from OpenAI's official download link, placed at ComfyUI/models/TTS/whisper-large-v3-turbo/large-v3-turbo.pt. It's the same .pt checkpoint OpenAI's own whisper repo points to - a big file, but it's the real thing, not a mirror.
Common issues
timestampis off andword_timestamps"does nothing." That's by design - the node forces word timestamps off when the master switch is off. Toggletimestampfirst.- The whole pack fails to load. The requirements install
openai-whisperbut nottransformers, and the pack's other node importstransformersat module load, dragging this one down with it.pip install transformers, restart, done. - Wrong language on your audio. There's no language dropdown here - Whisper auto-detects. That's why
initial_promptmatters more than it looks; a good hint fixes a lot of misdetection.
The subtitle format is a simple [MM:SS.mmm] listing rather than a spec-compliant .srt, so don't expect a player to import it directly - save it as a text sidecar or feed it through a converter. Small quirk, easy workaround, and a handy way to get timed transcription out of a node graph.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| max_num_words_per_page | INT | 241–50 | — |
| logprob_threshold | FLOAT | -0.10-2–-0.01 | — |
| no_speech_threshold | FLOAT | 0.100–1 | — |
| initial_prompt | STRING | 如果有中文, 严格使用简体中文: | — |
| timestamp | BOOLEAN | false | — |
| word_timestamps | BOOLEAN | false | — |
| unload_model | BOOLEAN | true | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| json_text | STRING | — |
| subtitle_text | STRING | — |