Shrink a video to a target file size or bitrate — H.264 or H.265 — using your computer's hardware video encoder through the browser's WebCodecs API. The file never leaves your machine.
WebCodecs is available in recent Chrome, Edge, and Safari. Firefox support is still landing. Try the latest Chrome or Safari.
No data is transmitted; all encoding happens on your device. Open source on GitHub.
Drop a video here or click to choose
MP4, MOV, or M4V — H.264 or H.265 video.
Compressed on your device with your hardware encoder. Never uploaded.
Scrub to preview. Drag the green handles (or use Set start / Set end) to keep only part of the video — a shorter clip compresses to a smaller file.
Drop interior sections: scrub to where a section starts, Mark cut start, scrub to its end, then Remove section (or press C to mark, C again to cut). Click a red band to undo it. Removed sections are cut out and the clip is stitched back together.
Not happy with the size or quality? Go back to Trim & cut or Settings and compress again.
This tool demuxes your file with MP4Box.js, decodes and re-encodes the video with the browser's WebCodecs API — which routes to your machine's hardware video encoder — and repackages the result with mp4-muxer. Every step runs locally in your browser; your video is never uploaded.
AAC audio is copied through unchanged (remuxed, not re-encoded), so keeping audio costs no extra quality and almost no time. Video with an audio codec other than AAC will have its audio dropped — you'll be told when that happens.