Nodes/ComfyUI Seedance/Whisper 1 语音转写
ComfyUI Node

Whisper 1 语音转写

The boring, reliable node that turns any ComfyUI audio into text or SRT

By T8mars·Created 2 months ago·Updated 3 days ago· 31
Whisper 1 语音转写
  • audio
  • api_config
  • text
  • response
modelwhisper-1
response_formatjson
skip_errorfalse
seed0

Not everything in T8mars/ComfyUI_Seedance is a shiny video model. Whisper_Transcription is the utility node in the corner, and it does exactly one thing: take a ComfyUI AUDIO input, send it to a whisper-1 transcription endpoint, and hand back text. It's the kind of node that's easy to overlook and quietly useful - you're transcribing a voiceover, turning a generated music track's vocals into searchable text, or producing an SRT subtitle file to burn into a video.

Because it's in this pack, the transcription runs through the same reseller API as everything else (default api.seedance.nz). Whisper is an open model, which is worth saying out loud: you could run Whisper locally for free and never send audio anywhere. The honest pitch for this node is convenience, not capability - if you already have the pack installed and a key configured, this is a zero-setup way to caption things, and for one-off SRT work that beats installing a local Whisper runtime into your ComfyUI. If you transcribe constantly, or the content is sensitive, run the local model instead.

How it works

It's a synchronous call, which makes it different from every other generation node in the pack: no task ID, no polling. Connect audio (the node converts it to WAV and uploads it as a multipart file), pick a response_format, run, get text. json (the default) returns the plain transcript on the text output plus a formatted response; verbose_json adds timing detail; srt and vtt return ready-to-use subtitle text; text is the bare transcript. The model dropdown has exactly one entry, whisper-1 - don't expect a model zoo here.

Inputs and outputs that matter

  • audio - the required input; converted to WAV before upload.
  • model - whisper-1, the only option.
  • response_format - json, verbose_json, srt, text, or vtt.

Outputs: text (the transcript; for srt/vtt/text it's that format's text directly) and response (the raw response, JSON-formatted for the json/verbose_json modes).

Install

Same pack, same three options:

# ComfyUI Manager: search "ComfyUI Seedance", or:
comfy node install seedance

Or git clone https://github.com/T8mars/ComfyUI_Seedance.git into ComfyUI/custom_nodes, pip install -r requirements.txt, restart ComfyUI. Then configure an API key from api.seedance.nz/console - via the Seedance API Config node's api_config output, the SEEDANCE_API_KEY env var, or a config/.env file. With skip_error on, a failed job returns an empty transcript plus an error JSON instead of stopping the whole workflow, which is what you want inside a batch.

The practical gotchas

Watch your source audio: whatever you feed in gets converted to WAV and uploaded, so a 30-minute podcast is a 30-minute upload and a nontrivial bill on a per-minute meter - keep clips short, or go local. And because the pack routes through a reseller, transcription happens on their server; nothing about your audio is private there. For the common case - grab the audio output of some other node in this same pack, transcribe it, feed the text into a caption or workflow step - it's the right tool, boring and dependable, and that's the compliment.

CategorySeedance

Inputs (6)

NameTypeDefaultDescription
audioAUDIOInput audio to transcribe; converted to wav before upload. | 需要转写的音频,会先转换为 wav 再上传。
modelCOMBOwhisper-1Whisper transcription model. | Whisper 语音转写模型。
response_formatCOMBOjsonAPI response format: json, verbose_json, srt, text, or vtt. | API 返回格式。
api_configoptSEEDANCE_CONFIGConnect Seedance API Config; otherwise SEEDANCE_API_KEY is used.
skip_erroroptBOOLEANfalseOn failure return an empty transcript and JSON error instead of stopping the workflow. | 失败时返回空文本和错误 JSON。
seedoptINT00–18446744073709550000ComfyUI cache seed. Fixed reuses the cached result while all other inputs stay unchanged; randomize/increment/decrement starts a new execution. This value is not sent to models without documented seed support. | ComfyUI 缓存种子;Fixed 在其他输入不变时复用缓存,随机、递增或递减会触发新任务。未声明支持 seed 的模型不会收到此参数。

Outputs (2)

NameTypeDescription
textSTRING
responseSTRING