Make that video small.
Set a size limit, add a video, and download an MP4 that fits. Your browser does the encoding on this computer. The file is not uploaded.
Drop a video here
MP4, MOV, WebM, MKV
The file stays on this device. Works offline after the first load.
This browser cannot encode video. Shrinkray needs WebCodecs, which is available in Chrome, Edge, Brave, Arc, Opera, Safari 17 or later, and Firefox 130 or later.
How it works
- The file is parsed in your browser: container, tracks, frame rate, duration.
- The size limit is converted into a bitrate. Resolution or frame rate is reduced only if the bitrate would be too low for the source.
- The browser's WebCodecs encoder writes a new MP4. If the result is over the limit, it is encoded again at a lower bitrate.
Privacy
The file is not uploaded. There is no server. After the page loads, the only network request is a hit-counter increment when a compression finishes. It carries no information about the file or about you.
The code is open source and can be run from your own computer.
Fine print
Why 18 MB for email, not 25?
Gmail, Outlook and iCloud accept messages up to 25 MB, but attachments are base64-encoded in transit, which adds about a third. A 25 MB video becomes a 33 MB message and is rejected. 18 MB arrives.
Why did it lower the resolution?
At the chosen size there were not enough bits per pixel to keep the original resolution looking acceptable. You can force a resolution in Options.
The result is under the limit. Why not exactly at it?
Hardware encoders do not hit a bitrate exactly, so the first pass aims 7% under the limit. If it overshoots, the video is encoded again at a lower bitrate.
Which browsers?
Chrome, Edge, Brave, Arc, Opera, and Safari 17 or later, on desktop and phone. Firefox 130 or later. Some Linux builds cannot encode H.264; the page shows a notice if so.
A file did not convert.
Open an issue with your browser version and what produced the file.