Save subtitle file
Turn any text in your graph into a subtitle file
- filepath
ASSSubtitleSave is the quiet back half of this pack's subtitle story: it takes whatever text you've got in your workflow and writes it to disk as a .ass or .srt file. On its own that sounds almost too simple to be a node, but it becomes genuinely useful the moment you're generating or editing subtitles programmatically - the output of an LLM that translated or rewrote your dialogue, for instance, or cleaned-up text from ASSSubtitleReader.
It's the exact inverse of ASSSubtitleSave's sibling: Reader pulls subtitle text into the graph, this pushes text out into a real file, which you can then feed straight into SubtitleEmbedding for hard- or soft-embedding. Read → translate → save → embed is the whole workflow this pack was built around, and this is the node that closes the loop.
What it does
Three inputs, one output, no mystery:
- subtitle_text - a multiline STRING, the actual subtitle content. You can paste it in by hand or wire it from any text-producing node.
- filename_prefix (default
subs/ComfyUI) - the node stamps a timestamp onto it and writes<prefix>_<YYYYMMDD_HHMMSS>.<ext>into ComfyUI's output/ folder. The timestamp means you never accidentally overwrite a previous run, which is a nice touch for batch work. - format -
assorsrt. - encoding (optional) - same generous list as the reader (
utf-8,utf-8-sig,latin-1,cp1252,shift-jis,euc-jp,gbk,big5), so you can write files that older players actually understand.
The filepath (STRING) output tells you where the file landed, so you can pass it along to the next node or read it from the console.
Worth noting: the node's own description says "cache directory," but the code writes to the standard ComfyUI output folder. Don't go hunting for a cache dir - it's in output/.
One honest caveat: this node writes exactly what you give it. It won't reformat garbage into valid ASS or renumber SRT cue times. It's a file writer, not a subtitle linter - if your text doesn't have proper Dialogue: lines or [Events] headers, the file won't render correctly when embedded. For machine-generated subtitles, generate valid ASS syntax and you're fine.
Installing
Part of ComfyUI-ASSSSA: install from ComfyUI Manager (search "ComfyUI-ASSSSA") or:
cd ComfyUI/custom_nodes
git clone https://github.com/HighDoping/ComfyUI_ASSSSA
Restart ComfyUI. No Python packages, no model downloads - and like the reader, this one is pure Python, so it works even if FFmpeg isn't on your system. (The embedding step after it still needs FFmpeg, though.)
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| subtitle_text | STRING | — | |
| filename_prefix | STRING | subs/ComfyUI | — |
| format | COMBO | ass | Subtitle format |
| encodingopt | COMBO | utf-8 | Character encoding for the subtitle file |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| filepath | STRING | — |