Speed up or slow down video (0.25×–4×) with pitch-preserving audio. Re-encodes to MP4. 100% in-browser.
Drop a video, pick a speed from 0.25× to 4×, and export with pitch-preserved audio
Video speed changes run entirely in your browser using ffmpeg.wasm. Your video file is never uploaded to any server.
Video timing changes through presentation timestamps: setpts=PTS/2 halves every frame's timestamp, which doubles playback speed. Audio is harder — simply resampling changes pitch (chipmunk effect) — so ffmpeg uses atempo, a phase-vocoder time-stretcher that preserves pitch but only accepts factors between 0.5× and 2×. For 4× speed the tool chains atempo=2.0,atempo=2.0; for 0.25× it chains atempo=0.5,atempo=0.5. Both video and audio are re-encoded (H.264 CRF 20 + AAC) because every timestamp in the file changes.
One atempo covers 0.5×–2×; beyond that factors are chained. 2.5× = 2.0 then 1.25.
Deji recorded a 4:00 (240 s) software walkthrough at a relaxed pace and wants a snappy 1:36 version for his changelog post.
Speed up or slow down video with pitch-preserved audio. Everything runs locally; nothing is uploaded.
FreeToolHub Video Speed Controller is a free browser-based tool — speed up or slow down video with pitch-preserved audio. No signup, no upload; everything runs locally in your browser.
Speed up or slow down video with pitch-preserved audio. In-browser, free.
The Video Speed Controller retimes video anywhere from 0.25× to 4×. Frames are retimed by dividing presentation timestamps (setpts), and audio is stretched or compressed with pitch-preserving chained atempo filters, or dropped entirely. Presets cover the common factors and a fine slider covers everything in between. All processing is local via ffmpeg.wasm.
Drop your video, pick a preset or drag the slider, and check the live output-duration readout. Choose whether to keep the pitch-preserved soundtrack or mute it, then click Apply. The MP4 downloads when the re-encode finishes.
Changing playback speed is not metadata you can flip in the container - the video and audio streams themselves must be rewritten. Video frames get dropped, duplicated, or interpolated to fill the new duration, while audio runs through a time-stretch filter that shifts pitch and tempo independently so voices do not chipmunk at 1.5x. That processing is why every speed change re-encodes the whole file: the pixels leaving the encoder are genuinely different from the pixels that went in, and the output bitrate you choose determines how much quality that rewrite preserves.
No. The audio passes through ffmpeg's atempo filter, a phase-vocoder time-stretcher that preserves pitch. Because a single atempo only covers 0.5×–2×, larger factors are chained: 2.5× becomes atempo=2.0 followed by atempo=1.25, and 0.25× becomes two chained 0.5 stages.
Output duration equals source duration divided by the speed factor — the tool shows this live as you move the slider (for example, 240 s at 2.5× = 96 s). Both video and audio are re-encoded, so the file is a clean H.264/AAC MP4.
Yes — tick "Remove audio entirely" and the export drops the audio track (-an) while retiming the video. This is common for turning long recordings into quick silent time-lapses.
Not here. Naive speed-up plays audio faster, which raises pitch - the chipmunk effect. Proper time-stretching processes audio through a filter that changes tempo while holding pitch constant, so a 1.5x lecture still sounds like the same voice talking faster. Below roughly 0.5x or above 2x even good stretching develops artifacts, which is the practical range for most uses.
Sports form review, dance and music practice, tutorial follow-alongs, and turning fast action into visible detail. 0.5x is the workhorse for technique analysis; 0.75x often reads more naturally for speech. Slowing footage does not create missing frames - the source fps caps true smoothness, so 30 fps footage at 0.5x shows each frame twice rather than inventing in-between frames.
Roughly inversely with duration for video: a 2x speed-up halves the runtime and nearly halves the size, since the same pixel data is spread over fewer seconds. Speeding up actually can improve perceived quality per second, because dropped frames remove redundancy the encoder would have spent bits on. Slowing down grows the file proportionally - duplicated frames compress cheaply but audio stretching adds some overhead.
For your own viewing, yes - YouTube, VLC, and most players offer playback-rate controls that do this live with no file change. Re-encoding matters when the file must behave identically everywhere: embedding in a page without player controls, sending to someone who will not hunt for the speed menu, or uploading to a platform whose editor does not support speed. Bake the speed in only when you need the file itself to be fast or slow.
What do you call a nosy pepper?
No signups, no data sold. Every tool is free to use — the free tier allows 5 downloads or saves per day, and the optional Pro plan ($7/mo, $59/yr) adds unlimited downloads, batch processing, white-label exports and an ad-free experience.
☕Support me on Ko-fi— support the free tier100% of proceeds go towards hosting & building more free tools.