Change video playback speed from 0.25x to 4x. Create slow motion effects, time-lapse videos, or speed ramps. Audio pitch preserved automatically with intelligent adjustment.
Speed up or slow down any video with the Video Speed Controller. Set a custom playback rate from 0.25x to 4x, preview the result in real time, and export the modified video. The tool retimes the video by rescaling frame timestamps and retimes the audio with a pitch-preserving filter, so sped-up dialogue stays at its natural pitch and remains intelligible rather than turning into a chipmunk voice, and slowed-down audio does not become an unusable low drone. Useful for creating time-lapses, slow-motion playback, or simply watching content at your preferred pace before exporting.
Initializing in your browser…
Trim and cut videos precisely with frame-by-frame scrubbing. Set start/end points visually, preview clips in real-time, and export trimmed videos instantly. No upload required - runs 100% in browser.
Convert videos between MP4, WebM, OGG, MOV, AVI, and MKV formats. Device presets for YouTube, Instagram, TikTok, iPhone, Android. Quality options from fast to high quality encoding.
Merge multiple video clips into one seamless video. Drag-and-drop reordering, preview before export, timeline visualization. Combine videos in any format with automatic re-encoding.
A 3-minute tutorial drags and you want a 2× sped-up version for a quick recap.
Input
tutorial.mp4 · 2× speed · drop/keep audio pitch
Output
A 1:30 video at 2×, optionally pitch-corrected audio
Frames are retimed and audio is time-stretched, with optional pitch preservation so narration stays natural rather than chipmunked. Speed ramps are useful for both recaps and slow-motion emphasis.
Speed up or slow down any video with the Video Speed Controller. Set a custom playback rate from 0.25x to 4x, preview the result in real time, and export the modified video. The tool retimes the video by rescaling frame timestamps and retimes the audio with a pitch-preserving filter, so sped-up dialogue stays at its natural pitch and remains intelligible rather than turning into a chipmunk voice, and slowed-down audio does not become an unusable low drone. Useful for creating time-lapses, slow-motion playback, or simply watching content at your preferred pace before exporting.
Speed up long recordings like construction progress, cloud movement, or cooking processes into watchable time-lapses.
Slow down action footage to reveal details invisible at normal speed, sports plays, dance moves, science experiments.
Speed up or slow down recorded tutorials to match the viewer's preferred learning pace before sharing.
The Video Speed Controller retimes your clip entirely in the browser using ffmpeg.wasm (the @ffmpeg/ffmpeg WebAssembly build, core 0.12.6) - nothing is uploaded to a server. On export it runs a single FFmpeg pass with the filter graph [0:v]setpts=(1/speed)*PTS[v];[0:a]atempo=...[a]. The setpts filter rescales each frame's presentation timestamp by the inverse of your chosen speed (pick 2x and timestamps are multiplied by 0.5; pick 0.5x and they are multiplied by 2), so this is pure timestamp retiming, not motion-compensated interpolation. No new in-between frames are synthesized: speeding up shows your existing frames over less real time, and slowing down replays the same captured frames over more time, which is why 0.25x and 0.5x slow motion can look slightly juddery unless the source was filmed at a high frame rate to begin with.
Audio is handled by FFmpeg's atempo filter, which only accepts a factor between 0.5 and 2.0 per instance. For speeds inside that window (0.5x through 2x) the tool applies a single atempo=speed. For the out-of-range presets - 0.25x and 4x - it chains several atempo stages, computing each stage as speed^(1/steps) so the stages multiply back to your target factor. Because atempo is inherently pitch-preserving, exported audio always keeps its natural pitch: sped-up dialogue stays intelligible instead of becoming a chipmunk voice, and slowed audio does not collapse into a low drone. Note that the 'Adjust Pitch' / 'Preserve Pitch' toggle and the audio mute button in the preview only change the live <video> element (via its playbackRate, preservesPitch and muted properties) - the exported file is produced by the fixed atempo graph and always preserves pitch and keeps the audio track.
The interface offers eight discrete presets (0.25x, 0.5x, 0.75x, 1x, 1.25x, 1.5x, 2x, 4x) plus a fine-tune slider that spans 0.25x to 4.0x in 0.05 steps, and it live-computes the resulting duration (original / speed) and the time saved or added before you commit. The export is re-encoded with libx264 at -preset ultrafast and -crf 23, audio as AAC, with -threads 0 to use all available cores; the result downloads as {filename}_{speed}x.mp4. Because it is a full re-encode rather than a stream copy, there is a small, predictable quality cost from the CRF 23 H.264 pass. Exporting at exactly 1x is blocked (the button is disabled and a toast asks you to pick a different speed), since that would re-encode the file with no timing change.
Each frame keeps its original detail. Speeding up shows the existing frames over less real time; slowing down replays the same frames over more time, so very slow rates can look slightly choppy because no new in-between frames are synthesized.
Audio is retimed with a pitch-preserving filter. At 2x speed, voices sound faster but keep their natural pitch rather than becoming high-pitched. You can also choose to drop the audio entirely.
The tool applies a uniform speed to the entire video. For variable speed, trim the video into sections, adjust each separately, then merge them.
Video is decoded and re-encoded on your own device. Large files never leave your machine.