Smart Video Compressor

Drag & drop multiple videos (MP4, MOV, AVI, MKV) and compress them in batch using FFmpeg WebAssembly. Adjust bitrate, resolution, preset – all processed inside your browser. No upload, no tracking, total privacy.

Native engine ready – Canvas + MediaRecorder (typically outputs WebM/VP8 or MP4/H.264, depending on browser). Works on all modern browsers without special headers.
Drag & drop videos here

or click to select (multiple files allowed)

✅ Supported: MP4, MOV, AVI, MKV, WebM. ❌ MPG/MPEG-1/MPEG-2 not supported – please convert to MP4 first (see guide below).
Format compatibility note: This tool uses browser's built-in video decoder. While it can play many files, MPG / MPEG-1 / MPEG-2 often fail due to limited codec support. If you see "Cannot play this video format", convert your file to MP4 (H.264/AAC) using HandBrake or FFmpeg before uploading.
Smaller file Medium (balanced) Better quality
Zero data transfer: Everything stays on your device. No upload, no tracking.

How Native Video Compression Works (Canvas + MediaRecorder)

Unlike FFmpeg.wasm, this tool uses only browser APIs: HTMLVideoElement, Canvas, and MediaRecorder. Each video is played at the desired resolution, frames are drawn onto a canvas, and the canvas stream is encoded to WebM (VP9) with adjustable bitrate. This approach is hardware-accelerated, consumes less memory, and works on any modern browser without special HTTP headers.

Compression pipeline: Original → Decode (GPU) → Resize (Canvas) → Encode VP9 → WebM output.
Typical reduction: 75–90% for 1080p to 720p with medium quality.

Technical Notes & Considerations
  • Limited Encoding Control: Unlike professional software (e.g., FFmpeg), this tool uses the browser's built-in MediaRecorder API. This means fine-tuning of advanced parameters like GOP structure or two-pass encoding is not available.
  • Efficiency Trade-off: This method prioritizes privacy and ease-of-use. The output file may be approximately 10-20% larger than what professional software can achieve with equivalent quality settings, as the browser uses a simplified, single-pass encoding strategy.
  • System Resources: The compression process is intensive and utilizes both CPU and GPU. For optimal performance, we recommend not processing more than 3 videos simultaneously.

Why Some Formats (MPG) Fail & How to Fix

The browser's native video decoder has limited support for legacy formats like MPEG-1/MPEG-2 (`.mpg`, `.mpeg`, `.vob`). While it may play them in a `

Browser Native Decoding Support Overview
  • Widely supported: MP4 (H.264/AAC), WebM (VP8/VP9, Opus/Vorbis)
  • Usually supported: MOV (if it contains H.264/AAC), AVI (if it contains H.264/MP3)
  • Limited / unstable support: MKV (depends on the codec inside the container)
  • Generally not supported: MPEG-1/2 (.mpg, .vob), HEVC/H.265 (may require a paid license on some browsers), professional codecs like ProRes, DNxHD.

Performance & Use Cases

SourceOriginal SizeAfter Compression (720p, quality 0.5)Estimated Processing Time
1 min gameplay (1080p MP4)85 MB9.2 MB~12 sec
2 min vlog (MOV)210 MB18 MB~22 sec
30 sec drone (4K)120 MB11 MB~8 sec

Note: Processing time depends on your device's GPU, browser performance, and video complexity. The times above are estimates for a mid-range desktop computer.

Case Study: Converting Legacy MPG Files

An archivist volunteer had over 100 old camcorder recordings in .MPG format (totaling about 50 GB). They first converted the entire batch to MP4 (H.264) using HandBrake's batch queue overnight. Then, using this tool with '720p, medium quality' settings, they compressed the videos to about 7.2 GB in WebM format, which were then uploaded to a family cloud photo album. The entire process kept the original videos on their local machine at all times.

Frequently Asked Questions

The output format is determined by your browser. Most browsers (Chrome, Edge, Firefox) output WebM (VP8 or VP9 video with Opus audio). Safari may output MP4 (H.264 video with AAC audio). This tool does not control the exact codec; it uses the browser's default for MediaRecorder. You can remux the output to MP4 without re-encoding using tools like FFmpeg: ffmpeg -i input.webm -c copy output.mp4.

Your file is likely MPG, VOB, or another legacy format. Convert it to MP4 using HandBrake (select "Fast 1080p30" preset) then re-upload. The converter is 100% free and fast.

Yes, audio is captured from the video element and merged into the output (Opus codec in WebM, AAC in MP4). The audio quality is preserved at a reasonable bitrate.

Yes, but performance depends on your device. For 4K, select a lower resolution like 720p or 1080p to speed up compression and reduce file size dramatically.

This tool works best on desktop browsers: Chrome, Edge, and the latest Firefox. Safari (both macOS and iOS) has limited MediaRecorder support (e.g., may not record audio, or have resolution constraints). Mobile browsers are not recommended due to performance and compatibility variations. The tool is optimized for desktop use.

Compression speed depends on the original video resolution, target resolution, your graphics card (GPU) performance, and the browser's implementation. Reducing 4K to 720p takes longer than 1080p to 720p. Closing other GPU-intensive applications (games, 3D software) can improve processing speed. The process is single-threaded per video, so batch processing multiple files will extend total time.
Based on W3C MediaRecorder API. Optimized for privacy and performance. Updated April 2026.