Skip to content
BrowserPine

Subtitle Tools

Subtitle FPS Converter

Convert SRT cue timing between common film, television, and video frame rates with exact rational scaling. Preview how the timeline changes before downloading a verified UTF-8 subtitle file.

Private browser processing

Convert SRT frame-rate timing

Choose the FPS the subtitles were timed for and the FPS they need to match. Your file stays on this device.

SRT · up to 10 MB

Local processing

Your subtitle timing stays on your device

The SRT is decoded, validated, retimed, serialized, and verified in a route-specific browser worker. BrowserPine does not upload or persist subtitle content, timing, filenames, or frame-rate choices.

Read how BrowserPine handles files

Three simple steps

How to convert subtitle FPS

Choose one SRT file

Select or drop the subtitle file. UTF-8 and BOM-marked Unicode are detected automatically, with explicit fallback choices for supported legacy encodings.

Choose source and target FPS

Select the frame rate the subtitles were timed for and the rate of the video they need to match. No rate is assumed by default.

Preview and convert

Review the exact factor, total timing change, cue samples, overlaps, and any rounding corrections, then download the verified converted SRT.

Exact frame-rate scaling for progressive subtitle drift

Frame-rate conversion changes every timestamp proportionally. The converter uses new time = old time × source FPS ÷ target FPS, so a 25 FPS subtitle converted to 23.976 FPS becomes about 4.27% longer. This is different from adding one fixed delay.

NTSC rates use their exact rational values: 23.976 is 24000/1001, 29.97 is 30000/1001, and 59.94 is 60000/1001. Timestamp calculations use integer rational arithmetic, not floating-point approximations, and each final SRT timestamp is rounded once to the nearest millisecond with exact halves rounded upward.

Choose FPS Converter only when timing drift grows

Use FPS Converter when subtitles begin close to sync but become progressively early or late because the subtitle and video frame rates differ. Use Subtitle Time Shifter when the same fixed early-or-late offset applies from beginning to end. Use Subtitle Editor when individual cues need separate changes.

Cue order, multiline text, Unicode characters, styling text, speaker labels, and positive cue durations are preserved. Because SRT stores whole milliseconds, an extremely short positive duration that collapses during rounding is kept at 1 ms and reported. Rounding can also change an exact overlap boundary, which is shown in the analysis instead of hidden.

Supported frame rates and output structure

Source and target choices include 23.976, 24, 25, 29.97, 30, 50, 59.94, and 60 FPS. Choosing the same rate produces a neutral no-op state and no download, because there is no timing change to make.

The downloaded SRT uses sequential numbering, standard HH:MM:SS,mmm timestamps, CRLF line endings, one blank line between cues, UTF-8 without a byte-order mark, and one final newline. Every conversion starts from the original selected subtitle, so changing or swapping rates never stacks an earlier result.

Troubleshoot the kind of subtitle sync problem

If the offset stays constant from start to finish, use Subtitle Time Shifter. If synchronization begins correctly but gets progressively worse, use Subtitle FPS Converter. If only individual cues are wrong, use Subtitle Editor for manual cue-by-cue timing and text changes.

The converter does not need, inspect, or upload a video. It only uses the source and target rates you explicitly choose, runs on the SRT locally in your browser, and requires no account.

Common questions

Subtitle FPS Converter FAQ

How does subtitle FPS conversion work?

Every cue start and end time is multiplied by source FPS divided by target FPS. The converter uses exact rational integer arithmetic and rounds the final timestamps once to the nearest millisecond.

What exact value is used for 23.976 FPS?

23.976 FPS uses the exact NTSC rational value 24000/1001. Likewise, 29.97 uses 30000/1001 and 59.94 uses 60000/1001.

Should I use FPS Converter or Subtitle Time Shifter?

Use FPS Converter when the sync error grows over time. Use Time Shifter when every cue needs the same fixed delay or advance.

What happens if I choose the same source and target FPS?

No conversion is performed and no file is created. The page reports that the timing already matches the selected rate.

Can FPS conversion change very short cue durations?

Start and end timestamps are rounded independently to whole milliseconds. If a positive duration would collapse to zero, the end is set to exactly 1 ms after the start and that correction is reported.

Does the converter preserve subtitle text and cue order?

Yes. The output is reparsed and checked against the original parsed SRT for cue count, order, exact expected timestamps, line structure, and text.

Which frame rates are supported?

The converter supports 23.976, 24, 25, 29.97, 30, 50, 59.94, and 60 FPS as both source and target rates.

Is my subtitle file uploaded?

No. File decoding, parsing, timing analysis, conversion, serialization, and output verification occur locally in your browser worker.

Keep working

Available

Subtitle Editor

Review and edit SRT cue text, timing, order, and file sections.

View tool

Available

SRT Cleaner

Normalize SRT structure and preview optional formatting, SDH, speaker-label, or duplicate cleanup.

View tool