How to Edit an SRT File and Add Subtitles to a Video
Editing an SRT file lets you correct typos, adjust timing, or fix sync issues after downloading subtitles. Once your SRT is clean, you can attach it to a video as soft subtitles (a separate track that can be toggled on/off) or burn it in permanently (hard subtitles). This guide walks through editing an SRT with any text editor, then adding it to a video using VLC, Premiere Pro, DaVinci Resolve, FFmpeg, or YouTube.
For a broader overview, see our complete guide to downloading subtitles. If you need to generate subtitles from scratch because a video has none, check Video Has No Subtitles? How to Generate Them Yourself.
Editing an SRT File
An SRT file is plain text with a strict structure: each subtitle entry has a sequential number, a timecode range (hours:minutes:seconds,milliseconds), and one or more lines of text, separated by a blank line. For example:
1
00:00:05,000 --> 00:00:08,500
Hello, this is the first subtitle.
2
00:00:10,000 --> 00:00:14,000
And this is the second line.
Fixing Text and Timing
You can edit an SRT file in any plain text editor (Notepad, TextEdit, VS Code, etc.). To fix text, simply change the line(s) under the timecode. To adjust timing, modify the --> timecodes—but keep these rules:
- Always preserve the sequential numbering (1, 2, 3...). If you delete an entry, renumber the rest.
- Timecodes must be in
hh:mm:ss,mmmformat (milliseconds separated by a comma). - The start time must be earlier than the end time.
- Entries should not overlap; the next entry’s start should be >= the previous entry’s end.
For more detailed instructions, see how to edit an SRT file on transcript.you.
Shifting All Timelines (Sync Offset)
If the entire subtitle track is off by a fixed amount (e.g., all subtitles appear 2 seconds late), you can shift every timecode by the same offset. Many text editors support search-and-replace with regular expressions, but simpler tools exist:
- Subtitle Edit (free, Windows): Open the SRT, use Synchronization → Adjust all times.
- Aegisub (free, cross-platform): Open the file, then Timeline → Shift times.
- Manual method: In a text editor, calculate the new time for each entry and replace. For large files, use a script or dedicated tool.
Adding an SRT File to a Video
Once your SRT is edited, you can add it to a video. The method depends on your player or editor.
Soft Subtitles in VLC Media Player
VLC can load an external SRT file without modifying the video file. Steps:
- Place the SRT file in the same folder as the video, with the same filename (e.g.,
movie.mp4andmovie.srt). - Open the video in VLC. Subtitles should load automatically.
- If not, go to Subtitles → Sub Track and select the SRT file, or use Subtitles → Add Subtitle File to browse manually.
VLC also supports multiple subtitle tracks. As the VideoLAN wiki on subtitles explains, you can toggle tracks, adjust delay, and change encoding (Tools → Preferences → Subtitles & OSD).
Importing Captions in Premiere Pro or DaVinci Resolve
Professional video editors import SRT as caption tracks, not burned-in text.
Adobe Premiere Pro:
- Open your project and timeline.
- Go to File → Import and select the
.srtfile. - In the Project panel, drag the SRT onto your timeline. It creates a caption track.
- Adjust timing or style in the Captions panel (Window → Captions).
DaVinci Resolve (see Blackmagic Design's product page):
- In the Edit page, go to Timeline → Import Subtitles.
- Choose your
.srtfile. The subtitles appear as a subtitle track. - You can edit text, timing, and style in the Inspector.
For a step-by-step guide, read adding an SRT file to a video on transcript.you.
Burning Subtitles In with FFmpeg
Hard (burned-in) subtitles become part of the video pixels—they can't be turned off. Use FFmpeg with the subtitles filter:
ffmpeg -i input.mp4 -vf "subtitles=subtitles.srt" output.mp4
This command takes input.mp4, burns subtitles.srt into every frame, and writes output.mp4. The FFmpeg subtitles filter documentation details options for font, size, and position.
Note: Burned-in subtitles increase file size slightly and reduce quality if re-encoded. Use a high bitrate to minimize loss.
Uploading to YouTube
YouTube supports SRT files natively. To add subtitles after uploading:
- Go to YouTube Studio → Subtitles (left menu).
- Select your video, then click Add Language (or select an existing one).
- Under Subtitles, click Upload and choose your
.srtfile. - YouTube parses the file and shows a preview. Adjust timing if needed, then Publish.
YouTube also accepts VTT and TXT formats. For more on creating an SRT for YouTube uploads, see creating a transcript file SRT for YouTube uploads. The YouTube Help page on subtitles and captions provides official guidelines.
Soft vs Hard (Burned-In) Subtitles: Trade-Offs
| Aspect | Soft Subtitles | Hard (Burned-In) Subtitles |
|---|---|---|
| Toggle on/off | Yes | No |
| Edit after encoding | Yes (edit the SRT) | No (must re-encode) |
| File size | No increase | Slight increase (text rasterized) |
| Compatibility | Requires player support | Works on any device |
| Quality | Text rendered by player | Text baked into video |
| Use case | Distribution, streaming | Archival, guaranteed display |
Soft subtitles are ideal for sharing because viewers can turn them off, switch languages, or adjust style. They are the standard for online video platforms like YouTube and Vimeo. Hard subtitles are useful when you must ensure subtitles appear on all devices (e.g., for kiosks or older TVs) or when you want to stylize text permanently.
Other Subtitle Formats
SRT is the most common, but you may encounter VTT (WebVTT) or TXT. VTT supports additional styling (position, color) and is used by HTML5 video. TXT is plain text without timing. For comparisons, see SRT vs VTT vs TXT: Which Subtitle Format Should You Download?.
Generating Subtitles from Scratch
If a video has no subtitle track, you can generate an SRT automatically using speech recognition. The video to SRT tool on transcript.you extracts audio and creates a timestamped transcript. Then edit as described above.
For downloading existing subtitles from YouTube, see How to Download YouTube Subtitles as SRT, VTT or TXT. For Vimeo, use the OrbitDownloader Vimeo Downloader.
A Note on Copyright
Downloading subtitles or videos for personal use (e.g., to watch offline with correct captions) is generally acceptable. Redistributing copyrighted content without permission may violate copyright law. Always respect creators' rights.
Putting It All Together
- Download or generate an SRT file. Use transcript.you or download from platforms via our YouTube Downloader.
- Edit the SRT in a text editor to fix text and timing. Shift all times if needed.
- Add to video using one of the methods above: VLC for playback, Premiere/DaVinci for editing, FFmpeg for burning in, or YouTube for upload.
With these steps, you can control your subtitles from start to finish.
Frequently asked questions
How do I edit an SRT file without losing formatting?
Use a plain text editor (Notepad, TextEdit, VS Code) and keep the structure: sequential numbers, timecodes in hh:mm:ss,mmm --> hh:mm:ss,mmm format, and a blank line between entries. Avoid word processors like Word that may add hidden formatting. For bulk timing shifts, use Subtitle Edit or Aegisub.
Can I add an SRT file to a video without re-encoding?
Yes, with soft subtitles. In VLC, place the SRT in the same folder with the same filename, or load it manually. In editors like Premiere Pro, import the SRT as a caption track. Re-encoding is only needed for hard (burned-in) subtitles.
What is the difference between SRT and VTT subtitles?
SRT uses a simpler format with comma-separated milliseconds; VTT (WebVTT) uses dot-separated milliseconds and supports CSS styling (position, color, font). VTT is standard for HTML5 video. Both are plain text. See SRT vs VTT vs TXT for details.
How do I fix out-of-sync subtitles in an SRT file?
If all subtitles are offset by the same amount, use a subtitle editor like Subtitle Edit or Aegisub to shift all timecodes. For example, if subtitles appear 2 seconds late, shift all times forward by 2000 milliseconds. Manually adjust each entry if the offset varies.
Can I upload an SRT file to YouTube after the video is live?
Yes. In YouTube Studio, go to Subtitles, select your video, click Add Language, then Upload under Subtitles. Choose your .srt file. YouTube will parse and let you preview before publishing. You can also edit timing in the interface.
What software can I use to generate an SRT file from a video?
Use the video to SRT tool on transcript.you, which uses speech recognition to create a timestamped transcript. You can then edit the SRT as needed. For videos with existing subtitles, download them via our YouTube Downloader or Vimeo Downloader.