Add subtitles to MP4 and MKV online — without re-encoding

You hit play on a film and there are no subtitles. Or the wrong language. Or they are baked into a separate SRT file that your TV cannot find. This guide covers the practical ways to add subtitles to a video file online — from attaching an SRT to a streaming player, to searching OpenSubtitles from inside the viewer, to the rare case where you actually need to burn them in.
The short version: for almost everything you want, you do not need to re-encode the video. A player that can load external SRT files is enough.
Why subtitles are a separate problem from the video
A video file can carry its subtitles three different ways, and the difference matters:
- External SRT (or VTT, ASS) file. A plain text file sitting next to the video. Fastest to swap, edit, and translate. Your player needs to know where to look.
- Embedded soft subtitles inside an MKV container. The text track sits alongside the video track. Good players pick them up automatically; many smart TVs do not.
- Burned-in (hardsub) subtitles. Rendered into the video frames themselves. Universally compatible but impossible to turn off, re-style, or translate.
Most viewers want soft subtitles — toggleable, swappable, non-destructive. The limitation is almost always the player, not the file.
The usual ways people add subtitles
The common options, with the real trade-offs:
- Rename the SRT to match the video and hope. Works in VLC, MPV, Kodi, Plex, and some smart TVs. Fails silently on most browsers and on many TV apps.
- Download an SRT from OpenSubtitles manually. Free, high quality, and the archive is enormous. Finding the right one for the right cut of the film is fiddly.
- Hardcode subtitles with HandBrake or ffmpeg. Guaranteed to display anywhere, but re-encodes the whole video, takes thirty minutes or more, and burns in your typo forever.
- Online subtitle adders. A handful work well. Most cap file size, watermark output, or take an hour to re-encode a 2 GB file. None handle a 40 GB 4K remux.
For the majority of use cases — watching on your own laptop, phone, or TV — a streaming player with SRT support is the right answer.
Doing it in Seedr
Seedr plays your video in the browser and loads subtitles without touching the file. You can search OpenSubtitles from inside the player or attach your own SRT.
- Upload the video to Seedr, or paste a link. Supported formats include MKV, MP4, AVI, MOV, WMV, MPEG, 3GP, VOB, M2TS, FLV, and M4V.
- Click the file to open it in the player.
- To search subtitles: click the subtitles icon (top-right in V2, bottom control bar in V1). Type the film name, pick the language, and choose a match from OpenSubtitles. It loads instantly.
- To attach your own: click the subtitles icon, then Attach SRT, and pick the file from your device.
- To use a subtitle already in Seedr: drop the .srt into the same folder as the video. The player finds it automatically.
- If the audio is wrong too — dubbed when you want original, or vice versa — open the gear menu and switch audio tracks.
- Adjust playback speed (0.5× to 3×) from the same gear menu if you are studying or blitzing familiar material.
Once subtitles are loaded, they render on top of whatever resolution the player is streaming — up to 1080p on Pro, up to 4K on Master. You can cast the result to Chromecast, AirPlay, or a Google TV device and the subtitles travel with the stream.
Tips and edge cases
A few things worth knowing before you trust this for a long movie night:
- Subtitle sync. If the SRT is slightly off, open the subtitle menu and nudge the timing rather than finding a new file.
- Encoding. Some older SRT files use Windows-1252 or CP1251 for non-English characters. UTF-8 is the safest bet; if you see garbled characters, re-save the file as UTF-8 in a text editor.
- Frame rate mismatch. An SRT made for a 25 fps PAL cut drifts on a 23.976 fps NTSC version of the same film. Search OpenSubtitles for the matching release name.
- Hard-of-hearing versus dialog-only. OpenSubtitles labels these separately. Pick what you want.
- Embedded tracks in MKV. Seedr reads embedded soft subtitles automatically. No attach step needed.
- TVs that ignore external SRTs. Cast from Seedr's player instead. The stream carries the rendered subtitles.
How this chains with the rest of your workflow
Because the player sits inside your cloud, the rest of the setup falls into place:
- Switch the subtitle language per session. The search pulls a fresh track each time you need one.
- Mount Seedr over WebDAV (Master plan) and point Infuse, Kodi, or Jellyfin at it. External SRTs in the same folder are picked up by those clients too.
- Cast to Chromecast, AirPlay, or Google TV with subtitles travelling along with the stream.
- Snapshot a frame with the subtitles visible if you want to save a quote.
Wrap
External subtitles with a cloud player beats hardcoding for nearly every use case. One file, many languages, no re-encode.




