Convert a video to a new frame rate
Drop a video file here or click browse files, wait while the conversion engine loads and the source properties are read, choose the target frame rate and conversion settings, then wait for automatic processing to finish. When processing finishes, click Download result. The FFmpeg/WebAssembly engine runs in the browser.
- Drop a video file into the tool or click browse files.
- Wait for the conversion engine to load and the source properties to appear, then review them.
- Choose the target rate, cadence handling, timing, audio, codec, quality, and preset.
- Check the duration preview; the current output updates automatically.
- Click Download result when it appears.
Review detected video properties
After the file loads, the interface shows Source frame rate, Duration, Estimated frame count, Resolution, Video codec, and Audio. Use these values to confirm that the selected source is the one you want to convert.
Choose the target frame rate and cadence handling
Target frame rate includes presets from 23.976 to 60 fps. Select Custom... to enter a rate. During conversion, the tool rejects a missing or non-positive value with Enter a valid target frame rate.; the field's min, max, and step attributes are not all enforced by the conversion logic.
Under Cadence handling, Duplicate / drop frames (default) repeats or skips existing frames to reach the target. It does not create new image content.
Motion interpolation (new blended frames) creates synthetic frames by blending neighboring frames. It is enabled only when the target is higher than the detected source rate. It can smooth motion, but it cannot recover detail from the source. The interface also constrains interpolation with the timing controls below.
Set VFR, playback speed, and duration
Enable Preserve variable frame rate (VFR) to cap timestamps at the target rate instead of forcing a fixed cadence. Use it when the source is already VFR and the target player supports VFR.
Keep every original frame (changes playback speed) preserves the original frame count 1:1 and retimes playback. This changes the clip's speed and may change its duration. Leave it off to keep the original duration and playback speed.
The duration preview shows Output duration, Output frame count, and Playback speed. Motion interpolation disables the two timing choices when they cannot be used together.
Set audio sync, codec, quality, and encode preset
Choose an Audio sync option:
- Keep audio unchanged (recommended) copies the audio when possible. If copying fails, the tool retries with re-encoded audio.
- Re-encode audio, correct any drift re-encodes and resamples the audio to match the output timeline.
- Remove audio creates an output without an audio track.
Codec determines the output container: H.264 and AV1 produce MP4, while VP9 produces WebM. Quality ranges from 0% to 100%; higher values favor visual quality and larger files, while lower values favor smaller files with more visible quality loss. Encode preset (speed vs. compression) ranges from ultrafast through slower and trades encoding speed against compression.
Convert and download the result
Wait for the progress message to finish after choosing a source or changing a setting. The downloaded filename uses the source basename, target rate, and output extension, such as source-30fps.mp4.
Conversion limits and failure handling
After you select a file, the FFmpeg/WebAssembly conversion engine loads before the tool reads the source properties. The interface describes this as an approximately 30 MB, one-time download. The input control accepts video/*, and the page displays MP4, WebM, MOV, MKV, AVI, and more; it does not define a complete supported-format list.
The local implementation does not specify a maximum file size, maximum duration, or guaranteed browser or device performance limit. Conversion can fail. When it does, the interface reports Conversion failed. Try a different codec or file.
How processing works in the browser
Conversion runs in the browser through FFmpeg/WebAssembly. The local page and implementation do not document server upload, file retention, deletion, or a broader privacy policy, so this article does not make claims about those behaviors.
Frequently asked questions
Will this change my video's playback speed?
No, not by default. The tool retimes the frame count to match your target fps while keeping the original duration, so motion plays back at the same speed. Playback speed only changes if you explicitly enable Keep every original frame (changes playback speed).
Does interpolation create real detail that wasn't filmed?
No. Interpolated frames are blended from the frames on either side of them. They can make motion look smoother, but they are synthetic and do not add information that wasn't already captured.
Why is Motion interpolation disabled?
It is enabled only when the selected target frame rate is higher than the detected source rate. It is disabled when the target is equal to or lower than the source.
How do custom frame rates work?
Select Custom... and enter a value. The conversion logic rejects the value only when it is missing or non-positive. Although the input markup shows min="1", max="240", and step="0.001", the script does not enforce all three constraints during conversion.
What does Preserve variable frame rate (VFR) do?
It caps timestamps at the target rate instead of forcing a fixed cadence. Use it only when the source is VFR and the target player supports VFR.
Which codec and output format are produced?
H.264 and AV1 produce MP4. VP9 produces WebM.
How do quality and encode preset differ?
Quality changes the quality and file-size tradeoff. Encode preset (speed vs. compression) changes encoding speed versus compression.
What happens if conversion fails?
Try a different codec or file, as stated in the interface message: Conversion failed. Try a different codec or file.
My audio drifted out of sync after conversion. What do I do?
Choose Re-encode audio, correct any drift from the audio sync option before converting. This resamples the audio track to match the output's exact timing instead of copying it through unchanged.
Why is there a ~30 MB download the first time I use this?
After you select a file, the tool loads an FFmpeg/WebAssembly engine in the browser before it reads the source properties. The interface describes the download as approximately 30 MB and one-time.