Compress Video
Re-encode a clip down to a quality level you choose, or towards a file size you have been given.
What this tool does
Compress Video re-encodes your footage with FFmpeg and returns a smaller MP4. Two routes are offered and they behave differently. Aim for a quality level and the encoder holds a constant quality across the whole clip, letting the resulting size fall out of that. Aim for a file size and it runs a two-pass encode instead: the first pass measures the clip, the second spends a bitrate calculated from its duration.
The quality tiers are constant-rate-factor settings rather than percentages. High, Balanced and Small send CRF 20, 26 and 32 to the encoder, where a lower number means more bits kept and a closer match to the source; those figures are calibrated for x264, and Balanced is the sensible starting point for anything headed to the web. The codec picker offers three encoders. H.264 plays on effectively every browser, phone and television, runs at FFmpeg's veryfast preset, and is the right answer unless something specific pushes you off it. H.265 reaches a smaller file at the same apparent quality and also runs at veryfast, but it is refused by some browsers and older hardware, and it reads that CRF number on its own scale rather than x264's. VP9 is the odd one out: a WebM codec written into an MP4 container here, driven by libvpx's realtime deadline instead of a preset, and handed a CRF without the zero bitrate target libvpx needs before it will treat that number as a pure quality goal. Its output therefore does not follow the tiers the way the other two do, and it is the option to leave alone unless you have a specific reason for it.
Several things this tool will not do are worth knowing first. The size target is an estimate, not a ceiling: the bitrate is derived from the clip's duration with 128 kbps reserved for the audio, so the finished file lands near your figure rather than exactly on it, and the result tells you whether it came within ten per cent, with a note when it overshot. That two-pass route also always encodes H.264, whatever the codec picker is set to, because it is built on the container's own encoder rather than the picker's. The Audio control — keep, 96 kbps, 128 kbps or remove the track — is not read by the encoder at all today: every job re-encodes the audio to AAC and none of them drop it, so that picker is inert until it is wired up. And the frame is never made smaller: a 4K clip comes back at 4K with fewer bits spent on it, which is the expensive way to save space. Downscaling with Resize Video first will get you a far smaller video at the same quality tier.
The encoding happens on the OmniKitly processing service, because no browser ships a video encoder worth using for this, and every job goes there however short the clip is. Your file travels over an encrypted connection. The upload is removed from the server the moment the encode finishes — or, if the job fails instead, when it expires six hours later — and the finished file is swept away at that same six-hour mark. The ceilings are a 200 MB upload and ten minutes per FFmpeg pass, which the two-pass size route is given twice over, and a long clip at a high tier can reach them. One detail for anyone publishing the result: on the quality route the MP4 is written without the faststart flag, so a file served straight from a web server may not begin playing until it has downloaded in full.
How to use it
- Add the video. One file or several, each sent as its own job, up to 200 MB apiece. MP4, MOV, MKV, WebM, AVI, WMV, FLV, MPEG, TS and 3GP are all accepted.
- Choose what you are aiming at. A quality level when the picture matters more than the number, or a file size when a limit has been handed to you and the footage has to fit inside it.
- Set the tier or the figure. High, Balanced or Small on the quality route. On the size route, type anything from 1 to 2000 MB; the default is 25 MB, which clears most chat and mail attachment limits.
- Pick the codec, then download. H.264 unless you have checked what has to play the file. The picker applies on the quality route; the size route is H.264 either way, and the Audio control underneath it currently changes nothing. The quality route reports the original size, the new size and the percentage saved; the size route reports the target you asked for and whether it was met.
Processing & privacy
Hybrid processing. Smaller jobs can run locally; heavier jobs may use secure server processing.
Common use cases
Clearing an attachment limit
A messaging app, an application form or a mail server states a figure and refuses anything above it. Name that figure on the size route and let the two-pass encode work towards it.
Publishing a screen recording
Capture software writes at bitrates nobody needs for a static desktop. Balanced on H.264 usually removes most of the bulk with nothing you would notice on playback.
Sharing phone footage that will not send
Handsets record at very high bitrates, so a clip of a few minutes can run to hundreds of megabytes. Re-encoding it at Balanced leaves a much smaller video that still looks like the original.
Keeping reference material on a small disk
Where footage is there to be consulted rather than watched properly, the Small tier keeps it legible at a fraction of the storage it arrived in.
Questions
Is my video uploaded?
Will it hit the size I asked for exactly?
Will the picture look worse afterwards?
H.264, H.265 or VP9 — which should I pick?
What does the Audio setting do?
Why is my video still large?
How big a file can I send, and how long does it take?
Can I compress several videos at once?
Related tools
- Video to GIF — Turn a short clip into an animated GIF.
- Video to MP3 — Extract the audio track from a video.
- Convert Video — Convert between MP4, WebM, MOV and MKV.
- Trim Video — Cut a clip to a start and end point.
- Merge Videos — Join several clips into one file.
- Mute Video — Remove the audio track from a video.