Clipunder

Runs in your tab · nothing is uploaded

Formats

What opens, and what it costs you

The container decides which path your file takes: returned untouched, repackaged in half a second, or re-encoded at full cost. This is the honest matrix.

The matrix

ContainerReads?If it already fitsNotes
MP4 (H.264 + AAC)YesReturned untouched, original nameThe common case: no work at all
MOV (H.264 + AAC)YesRepackaged to MP4, streams copiedUnder a second; quality untouched
M4VYesSame as MP4MP4 with an Apple extension
MKV (H.264 + AAC)YesRepackaged to MP4, streams copiedMeasured: 7.96 MB in 0.5 s
WEBM (VP9 or VP8)YesRe-encoded, not copiedMP4 cannot carry VP9 in the target profile
AVINo—The page says so up front instead of failing halfway

Output is always the same: H.264 video with AAC audio inside MP4, which is what Discord embeds and plays on desktop, web and mobile.

Two different costs hiding in one button

A file that already fits never enters the encoder. MP4 comes back byte-identical under its own name; MKV or MOV gets its compressed streams copied into a new MP4 wrapper, which is a packaging exercise, not a quality decision. Measured on the live page: 0.5 seconds for a 7.96 MB MKV, versus tens of seconds for the same file re-encoded.

Everything else is a real encode: decode every frame, re-compress at a bitrate derived from your target size, and mux. That is where the seconds go, and where quality is decided.

Why AVI is refused

The browser stack this page relies on (WebCodecs plus a JavaScript demuxer) has no AVI container parser. Rather than accept the file and fail minutes later, the page rejects it at intake and names the containers that do work. If you need AVI, convert the container first — the video inside is often H.264 already, and a remux will be lossless and fast.

iPhone and iPad: it runs, but it is slow

iOS 16.4 and later expose WebCodecs to Safari, so the tool does run on a phone. The problem is throughput: a phone encoder is several times slower than a laptop's, the device heats up and throttles, and Safari will kill a tab that holds too much memory. For anything longer than a minute or two, use a computer. On iOS older than 16.4 the encoder API is missing entirely and the page says so at load instead of failing halfway.

What the target size does to the picture

Two levers move together: the bitrate budget that follows from the target size, and the resolution ladder. The page keeps the largest resolution whose bits-per-pixel stays above a floor, so a small cap lowers the resolution rather than turning the frame into mush. If a result looks worse than you expected, raise the cap before you blame the codec.

Back to the compressor