Nodes/ComfyUI-FL-VoxCPM/FL VoxCPM Transcribe
ComfyUI Node

FL VoxCPM Transcribe

Free transcriptions, because your cloned voice needs to know what was said

By filliptm·Created 7 months ago·Updated 4 months ago· 32
FL VoxCPM Transcribe
  • audio
  • transcription
modelopenai/whisper-large-v3-turbo
languageauto
deviceauto

Every voice-cloning pipeline has the same hidden chore: the model needs the transcript of your reference audio, word for word. VoxCPM is pickier than most - feed it a wrong transcript and the cloned voice drifts, or the babbling retry kicks in. You could transcribe by ear, or you could drop a Whisper model into the graph and let it do the typing. This node is the second option, and it's free and fully local.

It's a helper node inside filliptm/ComfyUI-FL-VoxCPM, so it lives in the same pack as the TTS nodes. It takes any AUDIO and runs it through OpenAI's Whisper, returning plain text that you wire straight into prompt_text (V1 TTS), reference_text or prompt_text (V2 TTS), or a Dataset Maker .txt transcript.

How it works

Nothing exotic. The node takes the incoming audio tensor, forces it to mono, resamples to Whisper's native 16kHz, and runs it through a transformers Whisper model. The model choice and language settings are right there in the node:

  • model - defaults to openai/whisper-large-v3-turbo, with large-v3, medium, small, base, and tiny as fallbacks. Turbo is the sweet spot: near-large accuracy, noticeably faster.
  • language - auto detects from the audio, or pin it (en, zh, ja, ko, de, fr, es, pt, ru, it) when auto mishears.
  • device - auto picks CUDA if present, then MPS on Macs, then CPU.

The loaded model is cached in memory, so the second transcription is fast - the first one pays the download cost, which for large-v3-turbo is a few GB on first run. The single transcription output is a STRING, so it plugs into any text socket. There's a ProgressBar on the node so you're not staring at a dead canvas while it thinks.

Inputs that matter

Honestly, just two: audio in, and model if you want to trade accuracy for speed. A 10-second clone reference transcribes in a blink on tiny or base; a full dataset of narration clips is where you'd lean on large-v3-turbo for accuracy.

Installation

Same pack as everything else here - Manager search "FL VoxCPM", or:

cd ComfyUI/custom_nodes
git clone https://github.com/filliptm/ComfyUI-FL-VoxCPM.git
cd ComfyUI-FL-VoxCPM
pip install -r requirements.txt

Requires transformers, which the requirements file already pulls in. Whisper itself downloads from HuggingFace on first use.

Common issues

  • Empty output on a bad clip - very short or very noisy audio can return an empty string. Use the Audio Crop node to feed it a clean segment, or pin language instead of relying on auto.
  • First run is slow - that's the Whisper model download plus the 16kHz resample. Normal.
  • Transcript doesn't match the reference - Whisper sometimes "corrects" accents or names. If you're cloning, eyeball the transcription once before trusting it; a corrected word is still a wrong transcript for VoxCPM.
CategoryFL/VoxCPM

Inputs (4)

NameTypeDefaultDescription
audioAUDIO
modelCOMBOopenai/whisper-large-v3-turbo6 options: openai/whisper-large-v3-turbo, openai/whisper-large-v3, openai/whisper-medium, openai/whisper-small, openai/whisper-base, openai/whisper-tiny
languageCOMBOauto11 options: auto, en, zh, ja, ko, de, +5
deviceoptCOMBOauto3 options: auto, cuda, cpu

Outputs (1)

NameTypeDescription
transcriptionSTRING