Compress video files
Click or drop a video file here
Video Compressor re-records your video at a lower bitrate using the browser's native MediaRecorder API, entirely client-side. Output is always WebM. The target bitrate is calculated from your source file's own bitrate (size ÷ duration) scaled by the quality slider, not a fixed number — so the output is sized relative to how compressed your original already is. Note: since it works by playing and re-recording your video in real time, processing takes as long as the video's actual duration.
What output format do I get?
Always WebM, regardless of your original format.
Is audio preserved?
Yes, audio is captured along with the video track, at a bitrate that scales with the quality slider too.
How long does compression take?
As long as the video's full duration, since it works by playing and re-recording it in real time rather than processing frames instantly.
Is my file uploaded anywhere?
No, everything happens locally using your browser's MediaRecorder API.
Can the output ever end up larger than my original file?
It's possible, though uncommon, on a source that's already efficiently compressed (e.g. re-compressing a file you already ran through this tool, or a professionally-encoded video with little redundancy left). The target bitrate is always calculated below your source's own bitrate, but MediaRecorder does single-pass, real-time encoding with no look-ahead, so its rate control can overshoot the target on some content — most noticeable near the 90-100% quality setting, where there's the least headroom to begin with. If a file doesn't shrink, try a lower quality setting; a source that's already very compressed may simply have little left to gain.