Skip to content
Marvin's Toolbox.

Search tools

Type to filter all tools

Video Compressor

Shrink a video file right in your browser. Pick a quality level or a target size, optionally scale the resolution down, and compare the size before and after with a preview of the result.

Everything runs locally in your browser. Your data never leaves your device.

Upload

Drop a video here

MP4, MOV, WebM, MKV, AVI and more. Click to choose a file.

It never leaves your browser.

Compression

Plays practically everywhere and encodes fastest here. The safe default.

Capping the resolution saves a lot of space on phone and screen recordings. The cap applies to the short edge, keeps the aspect ratio and never upscales.

Encoding runs on your device and is much slower than a desktop app. A long video can take several minutes, WebM the longest.

Next steps

Send this tool's output straight into another tool.

Cut a section out of a video on a frame-accurate timeline with a live preview. Drag the start and end handles, preview just your selection, and export either with the original quality kept or re-encoded to MP4 or WebM.

Convert videos between MP4, WebM, MKV and MOV. Drop in one or more files, pick the target format and quality, follow the encoding progress, and download the results one by one or all at once.

Hash text or a file with MD5, SHA-1, SHA-256, SHA-512, SHA-3, BLAKE2, BLAKE3, CRC32 and more, all computed live as you type. Compare against an expected checksum and copy any digest.

Verify a checksum online: drop a file, paste the expected checksum and see instantly whether they match. The hash type is detected from the checksum itself, covering MD5, SHA-1, SHA-256, SHA-512, BLAKE3, CRC-32 and more, and sha256sum lines or whole checksum files can be pasted as-is.

Compress text or a file with gzip, deflate, brotli or Zstandard and see the size before and after, the compression ratio and how long it took. One click tries every method and recommends the smallest result.

Decompress gzip, deflate, brotli or Zstandard data from a file or pasted Base64 and read the result as text or download it. Detects the format from the magic bytes where possible, with a manual override.

Inspect any file or text as a hex dump with offsets, byte values and an ASCII column. Jump to an offset, search for bytes or text, select a range to see it decoded as integers and strings, and copy or download the dump.

See everything about a video file: duration, resolution, aspect ratio, frame rate, codecs, bitrate, container details and audio tracks, with a frame preview and a per-track breakdown. Reads MP4, WebM, MKV, MOV and more.

Extract still frames from a video. Grab every frame, every Nth one or one per second, or step through and pick single frames by hand. Choose PNG, JPEG or WebP for the output and download everything as a zip.

About the Video Compressor Tool

This tool shrinks a video file. Drop one in, then either pick a compression level or type a target file size, optionally cap the resolution at 1080p, 720p or 480p, and compress. The result shows the size before and after with the percentage saved, plays in a preview player, and downloads with one click.

In target size mode the tool reads the video's duration and computes the bitrate that lands near your number, stepping the audio bitrate down when the budget gets tight and telling you upfront when a target is too small to be watchable.

What you can do

  • Reduce a video's file size without changing its format.
  • Compress a video to a target size, like 10 MB for an email or chat upload.
  • Compress an MP4 for WhatsApp, Discord or a website.
  • Pick a compression level, or set the exact CRF yourself.
  • Downscale to 1080p, 720p or 480p for extra savings.
  • Compare the original and compressed size with a result preview.

How to use the Video Compressor

  1. 1Drop in a video, or click to choose one.
  2. 2Choose MP4 or WebM as the output. MP4 is the fast, plays-everywhere choice.
  3. 3Pick a level (Light, Balanced, Strong or a custom CRF), or switch to a target file size.
  4. 4Optionally cap the resolution, then hit Compress and watch the progress.
  5. 5Check the size comparison, preview the result and download it.

Quality level or target size

The two modes answer different questions. A quality level (CRF) says how much visual detail to keep and lets the size fall where it may, which gives the best quality for the bytes. A target size says how big the file may be and computes the bitrate from the video's duration. The size encode is a single pass, so the result lands near the target rather than exactly on it. The tool aims a few percent under to leave room for container overhead.

When the target is too small for the video's length, the tool says so before encoding and names the smallest reachable size instead of producing an unwatchable file.

What saves the most

Resolution is the biggest lever: a 4K phone clip capped at 1080p keeps most of its usefulness at a fraction of the size. Cutting away footage you do not need helps just as much, so trim first with the Video Trimmer. A video that is already heavily compressed cannot shrink much further without visible damage, and the tool tells you when a result came out no smaller than the original.

Speed expectations

Compression runs on ffmpeg compiled to WebAssembly, which downloads once (about 32 MB) on your first run. It is much slower than a native app, so a long video can take longer to encode than it runs, and WebM (VP9) takes the longest. The tool warns you on long files. To change the container rather than the size, use the Video Converter.

Credits

Open source does the heavy lifting in this tool. Thank you to:

  • ffmpeg.wasm

    A WebAssembly build of FFmpeg, the audio and video toolkit behind half the media software you know.

Everything this site builds on is listed on the credits page.

Turn a series of images into a video. Drop in your frames, reorder them, set the frame rate and resolution, and encode the result as MP4 or WebM, ready to play anywhere.

Convert an animated GIF into an MP4 or WebM video. Videos are far smaller than GIFs and play everywhere, so this is the quickest way to make a heavy GIF shareable.

Shrink any image with as little quality loss as possible. Pick a WhatsApp, Instagram or Discord preset, or switch to Custom to hit a hard file size or a fixed quality, downscale with aspect-locked resolution sliders, and keep or strip EXIF metadata. Live preview, multiple images at once.

Convert subtitles between SRT and VTT, shift their timing forward or backward, and fix frame rate drift to sync out-of-sync captions. Preview the parsed cues, catch format errors, and download the converted file.

Shrink an SVG with SVGO. Paste the markup or drop a file, toggle every optimizer plugin individually, set the numeric precision and multipass, and compare the size before and after. Copy the result or download it as a file.

Convert videos between MP4, WebM, MKV and MOV. Drop in one or more files, pick the target format and quality, follow the encoding progress, and download the results one by one or all at once.