Save SRT
Turn a Whisper transcript into a real subtitle file
- alignment
- srt_path
If you don't want captions burned into your pixels, this is the node you want instead of Add Subtitles To Frames. SRT is the subtitle format basically everything supports - YouTube, VLC, Premiere, DaVinci, every video platform that lets viewers toggle captions on and off. Save SRT takes what Apply Whisper heard and writes it out as a proper .srt file, no image compositing involved.
Why you'd use this instead of burning captions in
Burned-in captions (Add Subtitles To Frames) are permanent and universal - they show up even on platforms that ignore subtitle tracks. A separate SRT file is the opposite tradeoff: it's optional (viewers choose), it's editable after the fact without re-rendering video, and it's what you want if you're handing footage off to an editor, uploading to a platform with native caption support, or just want to keep the original clean footage and captions as separate deliverables. Same Whisper transcription underneath either way - this node is just the "portable file" output instead of the "pixels" output.
The inputs and outputs that matter
Genuinely simple - two inputs, one output:
alignment- plug insegments_alignmentfrom Apply Whisper, notwords_alignment. SRT files are conventionally written in sentence-ish chunks with a start/end time each, not one line per individual word, so segment-level grouping is what you want here. (Word-level timing is what the frame-burning nodes need; segment-level is what SRT wants.)name- the output filename, minus extension (defaults tosubtitles).
The single output, srt_path, is a STRING - the path to the file that just got written. It's mainly useful for chaining into another node that needs to reference the file, or just for confirming in the UI where it landed.
How to install it
Same pack, same steps as every node here. ComfyUI Manager: search ComfyUI Whisper, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/yuvraj108c/ComfyUI-Whisper
then restart ComfyUI. This particular node doesn't touch the heavier openai-whisper inference dependency directly - that cost is paid at Apply Whisper - but it's part of the same install either way.
Common issues & troubleshooting
Where did the file go? Save SRT writes to ComfyUI/output/srt by default. If you're running ComfyUI on a remote or cloud instance, that's a server-side path - you'll need to pull the file down through whatever your setup uses for output access, not look for it on your local machine.
Captions come out as one giant block, or oddly split. That's a symptom of wiring words_alignment in instead of segments_alignment. Since both share the whisper_alignment type, ComfyUI lets you connect either without complaint - the segmentation only shows up once you open the actual SRT file and see cue boundaries that don't match sentences.
Running it twice with the same name overwrites the previous file. There's no auto-increment here - if you're iterating on a workflow and want to keep a previous SRT around for comparison, change name between runs or copy the file out before rerunning.
Text looks right but the timing feels slightly off when you load the SRT into a player. That timing comes straight from Whisper's segment boundaries, which are Whisper's own best guess at sentence breaks - not hand-tuned. For most speech it's close enough to not notice; for fast or overlapping speech, expect the occasional cue that runs a beat long or short. There's no manual re-timing in this node - if you need frame-perfect adjustment, that's an edit you make in a dedicated subtitle editor after export.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| alignment | whisper_alignment | — | |
| name | STRING | subtitles | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| srt_path | STRING | — |