The short answer
For watching a movie or episode in a video player, use SRT. It is the simplest format and nearly every player, phone and TV understands it. Use VTT for subtitles on a web page, and ASS only when you need styled or positioned text and know your player supports it.
SRT (SubRip)
An SRT file is plain text. Each subtitle has a number, a time range and one or two lines of text, separated by an empty line:
1 00:00:05,000 --> 00:00:07,500 Good morning. 2 00:00:08,000 --> 00:00:10,200 Did you sleep well?
- Time format:
hours:minutes:seconds,millisecondswith a comma before the milliseconds. - Styling: only simple tags such as
<i>for italics, and in many players<b>and<font color>. - Strength: it opens in any text editor and works almost everywhere. This is why SinSubz saves translated subtitles as SRT.
- Limit: no precise positioning or advanced styling.
More details are in What Is an SRT File?
VTT (WebVTT)
WebVTT is the subtitle format of web browsers and the HTML5 video element. It looks like SRT, with a few differences:
WEBVTT 00:00:05.000 --> 00:00:07.500 Good morning. 00:00:08.000 --> 00:00:10.200 Did you sleep well?
- The first line must be
WEBVTT. - The milliseconds are separated with a dot, not a comma.
- Numbers before each subtitle are optional.
- It can place a subtitle at the top or side of the screen and style it with CSS on a web page.
Choose VTT when you add subtitles to your own website or a web video player. Video apps on phones and TVs usually prefer SRT.
ASS and SSA (Advanced SubStation Alpha)
ASS files describe fonts, colours, outlines, positions and even simple animation. Fan-made anime subtitles often use it for signs on screen and karaoke effects.
- Strength: full control over how text looks and where it sits.
- Limit: the player must understand ASS. VLC, MPC-HC, mpv and many Android players do, but a lot of TVs and some phone players show raw code or nothing.
- The file is harder to edit by hand because every line carries style information.
Image-based formats (SUB/IDX and PGS)
DVD and Blu-ray discs store subtitles as small pictures, not text. These cannot be translated directly. A program has to read the pictures with OCR and produce text first. When you only have such a file, convert it to SRT before translating.
Quick comparison
- SRT: simple text, works nearly everywhere, best for movies and TV on any device.
- VTT: same idea, made for browsers and web video players.
- ASS/SSA: styled and positioned text, needs a capable player.
- SUB/IDX, PGS: pictures, need OCR before they can be translated.
How to convert between formats
- Subtitle Edit (free, Windows) opens most subtitle formats and saves them as SRT, VTT or ASS from the File menu.
- ffmpeg converts text formats from the command line, for example
ffmpeg -i subtitle.srt subtitle.vtt. - A converter can drop styling that the new format does not support, so keep a copy of the original.
Sinhala text and encoding
Whatever format you choose, save the file as UTF-8. Older encodings cannot store Sinhala letters and the text turns into question marks. If your player still shows squares, it lacks a Sinhala font. See how to load Sinhala subtitles in VLC, MX Player, Kodi and on a TV.
Upload an SRT and translate it
Frequently asked questions
Can SinSubz translate VTT or ASS files?
SinSubz works with SRT files. If you have a VTT or ASS file, convert it to SRT first with a tool such as Subtitle Edit or ffmpeg, then translate the SRT.
Why do some players ignore my subtitle file?
The player may not support that format (ASS is the usual case), the file may not be UTF-8, or the file name may not match the video.
Is SRT or VTT better for a website?
VTT. Browsers expect WebVTT for the HTML5 video element. SRT is the better choice for video players on phones, computers and TVs.