SRT / VTT conversion
Convert SRT and WebVTT with integer milliseconds: BOM, CRLF, multi-line cues, 59,999 crossing a minute, comma/dot separators, cue numbers and blank lines are correct; NOTE/style blocks are skipped and the original stays downloadable.
Inputs and parameters
input— Subtitle textinputFile— Or choose a subtitle file (.srt / .vtt)encoding— Source encodingsource— Input formattarget— Output format
Real example
1
00:00:59,999 --> 00:01:01,000
Hello, world
2
00:01:02,000 --> 00:01:03,500
Second line
→ WEBVTT
00:00:59.999 --> 00:01:01.000
Hello, world
00:01:02.000 --> 00:01:03.500
Second line
Limits and failure handling
Defaults: 5 MiB / 5000 cues. VTT NOTE / STYLE / REGION blocks, cue identifiers and inline align/position/voice settings are not restored, so positioning/style may be lost; non-whitelisted tags such as <script> or <img onerror> are escaped to inert text and never execute. Non-UTF-8 input requires an explicit encoding choice or output is refused.
FAQ
Are BOM and CRLF supported?
Yes. BOM is stripped and CRLF/CR are normalized to LF before parsing; output uses LF and ends with a newline.
Are multi-line cues preserved?
No. Multiple lines inside one cue stay as newlines; blank lines inside a cue are folded during serialization so the output remains parseable.
Can I still get the original?
Yes. A "Download original" button keeps the original bytes and file name after success.