Everything runs on your machine — your input is processed right here in your browser and never uploaded to any server.

Video containers vs codecs: why your MP4 won’t play

“It’s an MP4, why won’t it play?” — because MP4 tells you almost nothing about the video. The single most useful mental model in all of video handling is this: a video file is a box (the container) holding streams encoded with particular codecs. Players can fail on either layer, and conversions behave completely differently depending on which layer you touch.

Containers: the box

The container (.mp4, .mkv, .mov, .webm, .avi) is a filing system: it interleaves the video stream, audio streams, subtitles and metadata, and provides the index players use to seek. MP4 is the universal citizen — phones, browsers, TVs, editors. MOV is Apple’s close cousin of MP4. MKV is the flexible open one — holds practically any codec, any number of tracks and subtitles, beloved for archives, less loved by iPhones and some TVs. WebM is the web-native profile (VP9/AV1 + Opus). AVI is a 1990s relic that keeps turning up.

Codecs: what is inside the box

The codec is the compression algorithm for the pictures themselves. H.264/AVC plays on essentially everything made in the last 15 years — the safe choice. H.265/HEVC halves file sizes but has patchy support outside Apple hardware and adds licensing mess. VP9is Google’s royalty-free answer (YouTube runs on it), and AV1 is the newer royalty-free standard — excellent compression, growing hardware support, slow to encode on older machines. Audio has its own codecs (AAC, MP3, Opus, AC-3), with AAC-in-MP4 as the universal pairing.

Why this explains your playback error

A player must understand bothlayers. A TV that “supports MP4” may support only H.264 inside it — hand it an MP4 containing HEVC and you get a black screen or an error, even though the extension looks right. An MKV might fail on a device not because of its codecs (H.264/AAC, perfectly supported) but because the device refuses the container. Same file contents, different failure layers, different fixes.

Remux vs re-encode: seconds vs hours

This distinction is where the model pays off. If only the container is wrong (MKV with H.264 inside → device wants MP4), the streams can be moved into a new box unchanged — a remux. It is fast, and quality is untouched because nothing is re-compressed. If the codec is wrong (HEVC → device needs H.264), every frame must be decoded and re-encoded — a re-encode, which costs real time and a little quality. The converters on this site pick the right path automatically: when the codec already fits the target, they use your device’s hardware codecs through the browser’s WebCodecs engine, so even 4K files convert at full resolution without uploading a single byte.

Quick answers

Video must play everywhere: MP4 with H.264 + AAC (convert to MP4). iPhone/WhatsApp refuses your file: same answer — H.264 MP4. File too large to send: compress it or lower the resolution. Need just a moment from a long recording: trim without re-encoding the rest. Only the audio matters: extract it to MP3 or another format. Web page background clip: WebM (convert) with MP4 fallback. A short silent loop for chat: GIF, kept under a few seconds.

One privacy note

Videos are usually the most personal files people convert — family moments, meetings, screen recordings. Classic converter sites upload them to a server farm, process them there, and keep you waiting in a queue. Every video tool linked above runs inside your browser instead: your file stays on your machine from first frame to last, and the only limits are your own hardware’s.

Popular right now