TEXT SRT Player @ vrch.ai
A teleprompter for your prompts
- TEXT
The TEXT SRT Player @ vrch.ai is a timed text player disguised as a node. You paste subtitle-format (SRT) text into it, and it plays those lines back on a clock - outputting one TEXT string at a time, changing exactly when the timestamps say to. In a normal workflow that's a low-key novelty. In a realtime ComfyUI setup it's the missing piece of automated storytelling: subtitles advance, the prompt changes, a new image generates, and you've got a narrated picture book that runs itself.
That's literally what the pack author built it for. The accompanying "Real-Time Storytelling" tutorial and the SRT audio picture book workflows use this node to drive a chain of scenes - each subtitle line becomes the prompt for the next frame, timed to the narration. The author's demo posts made the rounds on r/StableDiffusion as "Real-Time Storytelling with SRT-Formatted Prompts," and the whole thing works because a subtitle file already contains timing, so nobody has to choreograph anything by hand.
How it works
Paste SRT text (the 00:00:01,000 --> 00:00:04,000 format) into srt_text, and the node parses the cues and plays them. It keeps a current_selection index so it remembers where it is, and loop rewinds to the start when it reaches the end - handy for a background ambience loop that should just keep cycling. placeholder_text is what it outputs when there's nothing to show yet, so your downstream prompt node never gets an empty string on the first tick. debug logs the cue timing while it runs.
The one output, TEXT (STRING), is the current subtitle line. In the storytelling workflows it feeds straight into a prompt text node that drives a sampler, with instant queue so every cue change fires a new generation.
Installing it
Standard pack install, no extras:
cd ComfyUI/custom_nodes
git clone https://github.com/VrchStudio/comfyui-web-viewer
pip install -r comfyui-web-viewer/requirements.txt
Or grab "ComfyUI Web Viewer" from ComfyUI Manager and restart. It ships with the pack and downloads no models.
Getting it to actually play
Two practical notes, both learned from people using this in anger:
- Timing only advances when a generation cycle runs. The SRT player steps forward as the workflow executes, so it's designed to run with instant queue active. If you're on normal queue mode, the node only advances when you actually prompt - which makes the timing feel broken.
- SRT syntax is picky. Use proper subtitle files (or the pack's example workflow) rather than hand-typing timestamps, because a malformed cue line just gets skipped and you'll wonder why line three never shows.
For the full effect, pair it with the pack's Audio Web Viewer (or an audio picture book workflow) so the narration and the captioning stay in sync - the SRT file drives both the spoken line and the on-screen text from the same timing data.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| srt_text | STRING | — | |
| placeholder_text | STRING | — | |
| loop | BOOLEAN | false | — |
| current_selection | INT | 1 | — |
| debug | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| TEXT | STRING | — |