# Subtitle Converter

> Convert subtitles between SRT, VTT, ASS/SSA and SBV in your browser: fix garbled BIG5/GBK/Shift-JIS encoding, shift timing, retime FPS, batch-convert to zip.

- URL: https://bytescope.dev/en/subtitle-converter/
- Locale: en · Also: [ja](https://bytescope.dev/ja/subtitle-converter.md) · [zh-Hant](https://bytescope.dev/zh-Hant/subtitle-converter.md)
- Runs: Your files never leave your browser — all processing is local.
- Requires: Any modern browser (Chrome, Edge, Firefox, Safari), desktop and mobile.
- Updated: 2026-09-08

## What it does

This subtitle converter parses SRT, VTT, ASS/SSA and SBV files into a common cue model and writes them back out in whichever format you need — including a plain-text export. Drop one file or a whole batch (batches download as a zip), or just paste subtitle text straight in. Everything runs in your browser: your subtitle files are never uploaded.

It is built for the problems that actually break subtitles. Garbled characters from legacy encodings are the big one: files saved as BIG5, GBK or Shift-JIS are auto-detected, previewed live so you can see the fix, and can be switched manually if the guess is wrong. A timing-shift control moves every cue forward or back to rescue out-of-sync subtitles, and an FPS retime (23.976 ↔ 25 ↔ 29.97) fixes the steady drift that appears when a video was converted between frame rates.

A built-in table editor lets you correct text and timestamps cue by cue, with live validation that flags overlapping cues and negative durations. Cleanup options strip HTML tags, remove hearing-impaired annotations like [music], and merge cues that flash by too quickly. When a conversion would lose information — ASS styling and positioning don't survive a trip to SRT — the tool lists exactly what will be dropped before you convert.

Beyond single-file conversion, it merges two tracks into a bilingual pair: load an English and a Chinese file (for example) and it stacks them into one track, pairing cues by time overlap and letting lines that don't match up pass through on their own. A video-preview mode plays a local video with the current cues rendered over it, so you can check a timing shift or FPS retime against the actual footage before exporting. LRC lyrics files are supported for import and export too — bear in mind LRC keeps only start times, so end times are dropped on the way out.

## Limits

Does not transcribe audio or translate subtitles; it converts, re-encodes and retimes existing subtitle files.

## FAQ

### Are my subtitle files uploaded?

No. Parsing, conversion, encoding repair and the editor all run in your browser — files never leave your device. Batch conversions are zipped locally too.

### How do I fix garbled or mojibake subtitles?

Garbled text usually means the file isn't UTF-8 — older Chinese subtitles are commonly BIG5 or GBK, Japanese ones Shift-JIS. The tool detects the likely encoding, shows a live preview of the decoded text, and lets you switch encodings manually until the preview reads correctly. Exported files are always clean UTF-8.

### Why do my subtitles drift further out of sync over time?

Steady drift (fine at the start, seconds off by the end) is a frame-rate mismatch: the subtitles were timed for a different fps than your video, typically 23.976 vs 25. Use the FPS retime option to rescale every timestamp. A constant offset (equally wrong everywhere) is fixed with the shift control instead.

### What gets lost converting ASS to SRT?

SRT has no styling or positioning, so ASS features like fonts, colors, karaoke effects and screen placement are dropped — only the text and timing survive. The converter lists the specific features found in your file before you commit, so nothing disappears silently.

### Which formats are supported?

SRT, WebVTT (.vtt), ASS/SSA, YouTube's SBV and LRC lyrics, in any direction, plus plain-text export for transcripts. Batch conversion handles mixed input formats in one go.

### Can I merge two subtitle files into a bilingual track?

Yes. Load both files, choose which is primary (the top line) and which is secondary, and the merge pairs cues that overlap in time into a single dual-language track. Cues with no counterpart in the other file pass through unchanged, so mismatched timing never silently drops a line.

### Can I preview subtitles against my own video?

Load a local video file and the current cues — including any shift, FPS retime or manual edit — are rendered over it as live captions. The video plays from your device only and is never uploaded; it's there purely so you can confirm the timing lines up with the picture.

### Do you support LRC lyrics files?

Yes, for both import and export. LRC stores only a start time per line, so exporting to LRC drops each cue's end time (every line shows until the next begins) and flattens multi-line cues onto one line — the converter flags this before you export.
