Audio Transcript (CRT)
Whisper transcription, translation, and voice isolation in one node
- audio
- pipe
This is one of the heavier nodes in the pack, and it's also one of the few marked conditional in the CRT-Nodes README - meaning if its dependencies aren't installed, the pack keeps loading everything else and just quietly leaves this one out. It's a speech-to-text node built on Whisper, with optional vocal isolation, translation, and something the schema just calls "omnivoice" bolted on.
What it's for
Feed it audio, get back a transcript - plus, depending on which toggles you flip, isolated vocals separated from the instrumental, a translated version of the transcript, and an "omnivoice" audio output. The isolation step matters for real-world audio: transcribing dialogue that's mixed with music or background noise is a lot more reliable once the vocal track has been pulled out first, which is exactly what isolate_voice is for.
This node doesn't output any of that directly - it packages everything into a single pipe object that you then unpack with the companion Audio Transcript Pipe Out (CRT) node. That two-node split is a pattern you'll see elsewhere in CRT-Nodes (and in plenty of other packs) for exactly this reason: a node with seven potential outputs is unwieldy to wire up if you only need two of them, so the raw work stays bundled until you explicitly ask for the pieces.
The inputs and outputs that matter
audio- requiredAUDIOinput.isolate_voice(default false) - separate vocals from instrumental before transcribing. Per the README, this uses model sources fromcustom_nodes/ComfyUI-MelBandRoFormer, a separate vocal-separation node pack - see the install note below.enable_translation(default false) andtranslation_language(enum of 11 languages: English, Chinese, Japanese, Korean, French, Spanish, German, Portuguese, Russian, Arabic, Hindi; default French) - translate the transcript into your target language.enable_omnivoice(default false) - the schema doesn't spell out exactly what this does beyond the field name and the pairedomnivoice_audiooutput on the Pipe Out node; going by the naming it's some form of unified voice output, but I'd treat the specifics as something to verify by testing rather than assumed.
Output: a single pipe, typed CRT_AUDIO_TRANSCRIPT_PIPE - a custom type that only connects into the matching Pipe Out node.
Installing it
This node's dependencies go beyond the base CRT-Nodes requirements.txt. Per the pack's README, Audio Transcript (CRT) needs whisper and torchaudio, plus MelBand RoFormer runtime sources from custom_nodes/ComfyUI-MelBandRoFormer/model/*.py - meaning you need that separate node pack installed alongside CRT-Nodes for isolate_voice to actually work. Install CRT-Nodes first:
ComfyUI Manager - search CRT-Nodes, install, restart.
Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/PGCRT/CRT-Nodes.git
pip install -r requirements.txt
Then separately install a MelBand RoFormer node pack via ComfyUI Manager (search for it directly) if you plan to use isolate_voice. Restart ComfyUI after both are in place.
Common issues
- Node missing from the picker entirely - this is the pack's own documented conditional case: if
whisper,torchaudio, or the MelBand RoFormer sources fail to import, CRT-Nodes drops just this node and keeps the rest of the pack working. Check your ComfyUI startup console for the specific import error rather than assuming the whole pack is broken. isolate_voicedoes nothing or errors out - this is the dependency most likely to be missing, since it needs a separate custom node pack (ComfyUI-MelBandRoFormer) present on disk, not just a pip package. Confirm that pack is actually installed undercustom_nodes/before relying on this toggle.- First run is slow - Whisper-based transcription downloads model weights on first use if they're not already cached locally; budget for that pause the first time you run this node, same as any first-run Whisper setup.
- Translation or omnivoice fields produce empty output - remember this node only produces a
pipe; you won't see any of the actual text or audio outputs until you attach an Audio Transcript Pipe Out (CRT) node downstream. A common early mistake is expecting output straight off this node.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| isolate_voice | BOOLEAN | false | — |
| enable_translation | BOOLEAN | false | — |
| translation_language | COMBO | French | 11 options: English, Chinese, Japanese, Korean, French, Spanish, +5 |
| enable_omnivoice | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| pipe | CRT_AUDIO_TRANSCRIPT_PIPE | — |