Subtitle Converter
This subtitle converter turns SRT, VTT, ASS, SSA, SBV, MicroDVD SUB, SAMI, LRC, TTML and JSON files into any of those formats, or plain text, in one click. It works out the text encoding and always saves UTF-8, which is what fixes garbled accents. Everything runs on your device: nothing is uploaded and a whole batch converts in a second.
- Runs on your device
- Browser APIs
- Works offline
Updated
Drop your subtitle files here
How to convert subtitles to SRT (or any other format)
Step 1: Drop one or more subtitle files on the box above. The format is read from the text itself, so a file with the wrong extension still converts.
Step 2: Choose the target under Convert to: SRT for players and editors, VTT for web video, ASS to keep styling.
Step 3: Converting to MicroDVD .sub? Set the video’s Frame rate, because that format counts frames instead of seconds.
Step 4: Press Convert, then download each file or all of them as one ZIP.
Good to know
Settings explained
- Frame rate
- MicroDVD stores frame numbers, so it needs the video’s frame rate.
- Input text encoding
- Output is always UTF-8, which fixes garbled accents in most players.
Formats
Batch-friendly: add many files and they are processed one after another — if one fails, the rest still finish.
How it runs
- Built-in browser features
- Uses standard browser features only — nothing extra to download.
Subtitle formats compared: which one do you need?
Most players and editors want SRT, browsers want VTT, and styled anime or MKV releases use ASS. The other formats are niche or legacy, and converting them to SRT is the usual fix when a player shows nothing.
| Format | How time is stored | Styling it can hold | Typical use |
|---|---|---|---|
| SRT (SubRip) | 00:01:02,500 with a comma | Italic, bold, underline, colour | Desktop players, TVs, video editors, YouTube uploads |
| VTT (WebVTT) | 00:01:02.500 with a dot | Position, alignment, CSS classes | HTML5 video, Vimeo, web players |
| ASS / SSA | 0:01:02.50 (hundredths) | Fonts, colours, exact positions, karaoke, effects | Anime fansubs, MKV releases, Aegisub |
| SBV | 0:01:02.500,0:01:05.000 | None (plain text) | YouTube caption files |
| MicroDVD SUB | Frame numbers {1500}{1560} | Italic and bold markers | Old DivX and Xvid releases |
| SAMI (.smi) | Milliseconds in HTML-like tags | Basic HTML styling | Older Windows media players |
| LRC | [01:02.50], start times only | None | Song lyrics in music players |
| TTML / DFXP | XML time expressions | Styles and regions | Broadcast and streaming deliveries |
What is an SRT file?
An SRT file is a plain-text subtitle file in the SubRip format: numbered lines, each with a start and end time (00:00:04,200 --> 00:00:06,900) followed by one or two lines of text and a blank line. It carries almost no styling, which is exactly why every player, TV and editor reads it.
That makes SRT the safest target. When a subtitle file refuses to load, the quickest fix is usually to convert subtitles to SRT and try again.
Why subtitles show strange characters, and how UTF-8 fixes it
Garbled letters such as é instead of é mean the file was saved in an older regional encoding and the player guessed wrong. This converter checks for a byte-order mark, UTF-16 and strict UTF-8, then makes a statistical guess, and writes the result as UTF-8, which modern players read correctly. If the guess is wrong, force the right encoding under Advanced settings.
| Language of the subtitles | Choose under “Input text encoding” |
|---|---|
| English, Spanish, French, German, Portuguese | Western (Windows-1252) |
| Russian, Ukrainian, Bulgarian, Serbian | Cyrillic (Windows-1251) |
| Arabic, Persian | Arabic (Windows-1256) |
| Greek | Greek (ISO-8859-7) |
| Simplified / Traditional Chinese | Chinese (GB18030) / Big5 |
| Japanese / Korean | Shift-JIS / EUC-KR |
What a conversion keeps and what it drops
- Kept: every line, its timing, line breaks, italics, bold and underline. A line placed at the top of the screen stays there (
{\an8}in SRT, aline:setting in VTT). - Dropped when the target cannot hold it: ASS fonts, exact positions, karaoke and drawings in SRT or VTT; end times in LRC. To keep the full ASS look, burn subtitles into video instead.
- Frame-based input: MicroDVD files count frames. The converter uses the frame rate written in the file when there is one, otherwise 23.976 fps. If lines drift, fix them with Subtitle Sync.
- Not supported: picture subtitles such as Blu-ray PGS (.sup) and DVD VobSub (.idx/.sub). They are images of text and need OCR, which this converter does not do.
Tips & troubleshooting
Converting one pair over and over? The SRT to VTT converter, VTT to SRT converter and ASS to SRT converter have the target fixed, so there is nothing to pick.
Got
[MUSIC], speaker names or leftover<font>tags after converting? Run the file through the SRT cleaner.Subtitles stuck inside an MKV or MP4? Pull them out first with extract subtitles from MKV, then convert.
Need another language rather than another format? Translate subtitles keeps the timing and changes the words.
Subtitle Converter FAQ
How do I convert subtitles to SRT?
Drop the file on this page, keep Convert to on SRT (the default) and press Convert. VTT, ASS, SSA, SBV, MicroDVD SUB, SAMI, LRC, TTML and JSON files all work, and you can add many at once.
How do I convert SBV to SRT?
SBV is YouTube’s plain caption format. Drop the .sbv file here with SRT selected and press Convert: the timestamps are rewritten as SubRip times and the lines are numbered. The text and timing do not change.
How do I convert a .sub file to SRT?
If it is a MicroDVD text file (lines like {1500}{1560}Hello), drop it here and convert. If it is a DVD VobSub .sub with a matching .idx, it holds pictures, not text, and needs OCR software instead.
Why do my subtitles show strange characters?
The file uses an old regional encoding, often Windows-1252 or Windows-1251, and the player reads it as something else. Convert it here, even to the same format: the output is always UTF-8, which fixes it in VLC, TVs and browsers.
Is your subtitle file uploaded anywhere?
No. Your subtitle file is processed by your own browser on your own device. There is no server that receives files, so nothing is uploaded, stored or shared. You can even switch to airplane mode once the page has loaded.