Nodes/ComfyUI-speech-dataset-toolkit/Transcribe by nemo-asr
ComfyUI Node

Transcribe by nemo-asr

Text, subwords, and segments from one node, no config knobs

By kale4eat·Created 2 years ago·Updated about a year ago· 23
Transcribe by nemo-asr
  • model
  • audio
  • text
  • subwords
  • segments

The richest single transcribe node in this pack. Where the kotoba-whisper and faster-whisper transcribe nodes make you pick between flat text or segment-level detail depending on which variant you use, this one hands you all three levels of granularity - flat text, individual subword tokens with timing, and sentence-like segments with timing - from a single run, with zero configuration knobs to get wrong.

How it works

It runs the loaded ReazonSpeech nemo-asr model (from SDT_NemoAsrLoader) over the audio using NVIDIA NeMo's decoding pipeline, which natively tracks token-level timing as part of how it decodes - that's not an add-on feature, it's inherent to how NeMo-format ASR models produce output. This node exposes that native structure directly rather than only surfacing the final text: subword tokens (the actual pieces the model's tokenizer broke the transcript into, each with its own timestamp and token ID) and segments (coarser, sentence-like groupings with start/end/text) come out alongside the plain transcript.

The inputs and outputs that matter

  • model (type NEMO_ASR) - required, from SDT_NemoAsrLoader.
  • audio - required, the clip to transcribe. No optional inputs at all on this node - no prompt, no language override, nothing to tune.
  • text (output, STRING) - the flat transcript.
  • subwords (output, NEMO_ASR_SUBWORDS) - a bundle of the model's raw subword tokens with timing, feeds into SDT_NemoAsrListSubwords to explode into individual items.
  • segments (output, NEMO_ASR_SEGMENTS) - a bundle of sentence-like segments with timing, feeds into SDT_NemoAsrListSegments.

How to install it

ComfyUI Manager: search ComfyUI-speech-dataset-toolkit, install, restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/kale4eat/ComfyUI-speech-dataset-toolkit
cd ComfyUI-speech-dataset-toolkit
pip install torchaudio --index-url https://download.pytorch.org/whl/cu121
pip install -r requirements.txt

The dependency weight here is on SDT_NemoAsrLoader upstream (NeMo's own Python package plus the model checkpoint) - this node itself adds nothing beyond that.

Common issues & troubleshooting

Not sure which output to actually use. Start with text if you just want a transcript. Reach for segments (via SDT_NemoAsrListSegmentsSDT_NemoAsrSegmentProperty) for sentence-level start/end/text, the same granularity kotoba-whisper and faster-whisper's segment outputs give you. Reach for subwords only if you specifically need token-level detail - that's finer-grained than most dataset-building tasks need, and more useful for things like forced alignment or duration modeling than everyday transcription work.

Wired subwords or segments straight into something expecting individual values and got a type error. Both are bundled list-container types, not directly usable - run them through SDT_NemoAsrListSubwords/SDT_NemoAsrListSegments first to explode into individual items, then SDT_NemoAsrSubwordProperty/SDT_NemoAsrSegmentProperty to actually read the fields.

Transcribing non-Japanese audio and getting poor results. This model is trained specifically on Japanese speech via the ReazonSpeech corpus - use SDT_FasterWhisperTranscribe for other languages.

No way to prime the model with context or a prompt. Correct - unlike the faster-whisper and kotoba-whisper transcribe nodes, there's no prompt input here at all. If context-priming matters for your accuracy on tricky proper nouns, this isn't the node that offers it.

Categoryspeech-dataset-toolkit/ai/nemo-asr

Inputs (2)

NameTypeDefaultDescription
modelNEMO_ASR
audioAUDIO

Outputs (3)

NameTypeDescription
textSTRING
subwordsNEMO_ASR_SUBWORDS
segmentsNEMO_ASR_SEGMENTS