Use cases · Subtitles and captions
Subtitle generation API: SRT and VTT from any audio or video
Speech Revolutions returns finished SRT or VTT subtitle files from a single API call: numbered, timed, line-wrapped and split at every speaker change. It handles 99+ languages, detected automatically.
from speechrevolutions import SpeechRevolutions
client = SpeechRevolutions()
srt = client.transcribe("launch-video.mp4", output_type="srt")
srt.save("launch-video") # -> launch-video.srt
vtt = client.transcribe("launch-video.mp4", output_type="vtt")
vtt.save("launch-video") # -> launch-video.vttWhere it goes wrong
Captions that drift from the audio, or that keep one speaker's line on screen after the next person starts talking, are the complaint viewers notice first.
Generating them yourself means timestamping words, breaking lines at sensible points and writing the file format, all on top of transcription.
What the API gives you
- SRT and VTT from the server
- output_type="srt" or "vtt" returns the finished file; result.save() writes it to disk.
- Captioning rules built in
- One speaker per cue, at most two lines of 42 characters and 7 seconds, with breaks at pauses and sentence ends.
- Word-level timing
- Every word is aligned to the audio, with a 40 ms median word-boundary error in our benchmark.
- Speaker changes
- A new cue starts when the speaker changes, prefixed with the speaker label; turn speaker_labels off for captions without it.
- Languages
- 99+ languages, detected automatically, including switches mid-file.
- Video files
- Send the video; files up to 10 GB through the SDK.
Measured
In our timestamp benchmark, Speech Revolutions measured a 40 ms median word-boundary error, against 58 ms for ElevenLabs, 59 ms for AssemblyAI and 65 ms for Deepgram.
Full results and method: speaker diarization measured across five APIs and all benchmarks.
Pricing
$0.003 per audio minute, $0.18 an hour, billed by the second. Speaker labels, word timestamps and every output format are included. New accounts get $10 of credit with no card required. Pricing details.