Guide
Container vs codec
The short answer
A container (MP4, MKV, MOV, WebM) is the box that holds the streams and keeps them in sync. A codec (H.264, HEVC, VP9, AV1, AAC) is how the picture and sound inside are actually compressed. Two files with the same extension can contain completely different things.
By FixMyFiles Updated How we write these
What the container does
The container holds one or more video streams, one or more audio streams, subtitles, chapters, artwork and metadata, and records the timing that keeps them together. It does not compress anything itself.
Containers differ in what they will carry. MP4 is conservative and takes a well-defined set of codecs, which is exactly why it plays everywhere. MKV takes almost anything, including several subtitle tracks and audio languages, which is why media libraries use it. WebM is deliberately narrow: open codecs only.
What the codec does
The codec is where the compression happens, and it is what decides both file size and whether a device can play the file at all. H.264 is the safe default nearly everything can decode in hardware. HEVC (H.265) produces smaller files but needs a licence, so support is uneven. AV1 is royalty-free and more efficient still, with hardware support only in fairly recent devices.
Hardware support is the practical dividing line. A phone playing H.264 uses a dedicated chip and barely warms up; the same phone playing AV1 in software may drain the battery and stutter.
Why this explains your broken file
"MP4 won’t play" almost always means the container is fine and the codec inside is not supported — commonly HEVC on a machine with no HEVC decoder. The player opens the box, does not recognise the contents, and shows you a black screen or plays sound with no picture.
It also explains why some conversions are instant and some take minutes. Changing the container while keeping the streams — a remux — is a copy operation and takes seconds. Changing the codec means decoding every frame and re-encoding it, which takes real work and loses a little quality.
The Video Converter copies the streams when the target container can carry them and only re-encodes when it has to, and it tells you which happened.
Choosing when you have to pick
Sending a video to anyone — MP4 with H.264 video and AAC audio. Nothing else is this universally playable.
Video on your own website — MP4 with H.264 as a baseline, and optionally WebM with VP9 or AV1 for browsers that will take a smaller file.
Archiving a film with several languages and subtitles — MKV, which is the only common container that keeps all of it.
Editing — whatever your editor prefers. MOV with ProRes is heavy but designed to be cut, which general-purpose formats are not.
Questions
Is MP4 a codec?
No. MP4 is a container. The codec inside is usually H.264 or HEVC for the picture and AAC for the sound.
Why does my MP4 play sound but no picture?
The audio codec is supported and the video codec is not — HEVC on a device without an HEVC decoder is the usual cause. Converting the video stream to H.264 fixes it.
Is converting MKV to MP4 lossless?
It can be. If the streams inside are ones MP4 accepts, they are copied across untouched and only the box changes. If not, the video has to be re-encoded.