CS MOSS Audio Transcribe
Turn your video's audio into SRT subtitles, fully local
- audio
- SRT
CS MOSS Audio Transcribe does exactly one thing: take a ComfyUI AUDIO value and hand you back an SRT subtitle file with timestamps. No API key, no cloud, no upload - it runs the OpenMOSS MOSS-Transcribe-Diarize model locally, which is a nice change of pace in a world where speech-to-text usually means phoning Whisper at someone else's server. The name is a lie in the good direction: despite the model's "Diarize" branding, the node itself just returns clean SRT text with per-segment timestamps. Wire that straight into CS Video Subtitle and you've got a complete transcribe-and-subtitle pipeline with two nodes and zero extra services.
How it works
The audio gets normalized to mono 16 kHz - which is what speech models want regardless of what your source is - then handed to the MOSS model. The weights aren't shipped in the pack; the first run downloads them from Hugging Face (roughly 1.7 GB), and every run after that reuses the local copy. The model does speech recognition with timestamps and returns segments, which the node assembles into proper numbered SRT with start and end times. There's a language dropdown - auto, 中文, or English - and if you set max_chars_per_line to anything above 0, it hard-wraps lines so subtitles don't run off the screen. Leave it at 0 for no forced wrapping.
The auto_unload_model toggle (on by default) is worth respecting: after each transcription it releases the MOSS runtime and its CUDA memory, because the model is chunky and you don't want it parked in VRAM while you're off grading a video. The node also vendors its own runtime with a transformers compatibility shim - that's deliberate. Audio in ComfyUI is famously a dependency minefield, with one node's transformers bump breaking another's, and this is the pack's attempt to not be that guy.
The inputs and output
- audio - any standard AUDIO, mono or multi-channel.
- language -
auto,中文, orEnglish. - max_chars_per_line - 0 for no wrapping, or a character limit.
- auto_unload_model - unload the model from VRAM after each run.
Output is a single SRT string. It plugs directly into CS Video Subtitle's srt input, which is the intended use - the pack ships a sample transcribe→subtitle workflow in its workflows folder.
Install and gotchas
Same pack drill as the rest of CineStyle: ComfyUI Manager, search "ComfyUI_CineStyle", or cd ComfyUI/custom_nodes && git clone https://github.com/chflame163/ComfyUI_CineStyle, restart, and look under 😺dzNodes/CineStyle/Audio. It's a V3-schema pack, so a reasonably current ComfyUI is a hard requirement - if the node doesn't appear after install, update ComfyUI first.
Where people get burned:
- The first run downloads ~1.7 GB. It's a one-time thing, but it happens on the first execution, not at install - and it needs to reach Hugging Face. No internet, no weights, and the node fails with a clear "install huggingface_hub or place the weights manually" message.
- Manual placement is a trap. The README says put the model in
ComfyUI/models/moss, but the shipped code actually looks inComfyUI/models/audio_models/moss. If you pre-download to the README's path, the node won't find it and will re-download. Trust the code, or just let it download. - The pack is brand new - a few weeks old as of writing, with no real community trail yet. MOSS-Transcribe-Diarize itself is the well-worn part (hundreds of thousands of Hugging Face downloads); the wrapper around it is the new bit.
One honest caveat: this is a transcription node, not a translation or polishing tool. What comes out is what the model heard. For getting a first-pass subtitle track onto local video without leaving ComfyUI, though, it's the most direct route there is.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | Standard ComfyUI AUDIO input. | |
| language | COMBO | auto | 3 options: auto, 中文, English |
| max_chars_per_line | INT | 00–200 | — |
| auto_unload_model | BOOLEAN | true | Unload MOSS weights after each transcription. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SRT | STRING | — |