Skip to content

September 7, 2026 ยท 8 min read

Why Won't My MP4 Play? How to Read a Video File's Codec

An .mp4 that refuses to play is almost never the file extension โ€” it is the codec inside. Here is how to find out which one you have, and what to do about it.

An .mp4 that will not play is almost never a problem with the .mp4 part. The extension names the box; what matters is the codec inside it, and a single container can hold half a dozen incompatible ones. The fastest way to settle it is to read the file's header โ€” which our video file inspector does in your browser, without uploading anything.

Quick answer

SymptomMost likely cause
Nothing plays at allVideo codec unsupported (usually H.265/HEVC)
Sound but no pictureAudio codec supported, video codec is not
Plays on iPhone, not on WindowsH.265 โ€” Apple supports it broadly, others do not
Enormous file, plays nowhereApple ProRes โ€” an editing format, not a delivery one
Slow to start online, instant from diskMetadata stored at the end of the file

Container and codec are not the same thing

This is the confusion behind most of these problems.

The container is .mp4, .mov, .mkv. It is a wrapper that says where the video track is, where the audio track is, how long the whole thing runs.

The codec is how the pictures were compressed โ€” H.264, H.265, AV1, VP9, ProRes.

Two files can both be .mp4 and share nothing else. One holds H.264 and plays on a decade-old phone; the other holds ProRes 4444 and will not open in any browser on earth. Renaming the file changes nothing, because the extension was never the problem.

Inside the file the codec is recorded as a four-character code:

avc1  โ†’  H.264 / AVC          plays everywhere
hvc1  โ†’  H.265 / HEVC         Safari yes, others it depends
av01  โ†’  AV1                  recent browsers only
vp09  โ†’  VP9                  broad, but not in Safari on older systems
apcn  โ†’  Apple ProRes 422     no browser plays this

Sound but no picture is a codec mismatch

This one confuses people because the file is clearly working โ€” you can hear it.

A container holds separate tracks, and your player evaluates them independently. Audio is almost always AAC, which plays essentially everywhere. If the video track is H.265 and your browser lacks support, you get exactly what you would expect: working audio, black screen.

It is not corruption. The file is fine, and another player or another machine will very likely play it.

H.265 is the usual culprit

H.265, also called HEVC, compresses roughly twice as efficiently as H.264. It is what modern iPhones record by default. It is also the format most likely to fail on someone else's computer.

Support depends on hardware decoding and licensing rather than on the browser alone, which is why the same file plays in Safari on a Mac, plays in Chrome on one Windows laptop, and fails in Chrome on another. That inconsistency is the signature of an HEVC problem.

If a video has to play somewhere you do not control โ€” a client's machine, a web page, an upload form โ€” H.264 remains the correct choice. It is larger for the same quality, and it works.

Why some videos take forever to start

A different problem with a different cause, and it is worth knowing because it looks like slow internet.

An MP4 stores its metadata in a box called moov, and the actual video in one called mdat. If moov comes after mdat, a player streaming the file has to fetch all the way to the end before it can begin, because until it finds moov it does not know how to interpret anything.

From your own disk this costs nothing โ€” seeking is instant. Over a network it means downloading the entire file before the first frame appears.

Moving moov to the front is called fast start. It does not re-encode anything, only rewrites the layout, so it takes seconds even on a large file. Our inspector reports whether a file has it, under starts without full download.

Check the bitrate before blaming the connection

If a video plays but stutters, the question is whether its bitrate exceeds what the viewer's connection delivers. Average bitrate is file size divided by duration, and it is the honest measure of how much data per second must arrive.

A 12 Mbps video is unwatchable on a 6 Mbps line no matter how well it was encoded. Compare the figure from the inspector with a real measurement from our speed test โ€” and note that the number that matters is the viewer's connection, not yours.

What to do about each case

Unsupported codec. Re-encode to H.264. Any modern converter will do it, and the file will grow for the same visual quality โ€” that is the trade you are making for compatibility.

Sound but no picture. Same fix. The audio was never the problem.

Slow to start online. Re-run it through a tool that enables fast start. No quality is lost because nothing is re-encoded.

Plays nowhere and is enormous. You have an editing format such as ProRes or DNxHD. Convert before sharing; these are meant for editing timelines, not delivery.


Find out which case you have with the video file inspector โ€” it reads the header in your browser and the file is never uploaded, so a multi-gigabyte video is inspected as quickly as a small one. For the rest of what your setup can handle, see WebGL and GPU details and the connection report.

Related Reading

๐Ÿ“„How to Check If Your Password Was Leaked (Without Sending It Anywhere)Typing a password into a website to check it sounds reckless. Here is the method that makes it safe, how to verify the claim yourself, and why a clean result proves less than you think.7 min readโ†’๐Ÿ“„How to Read Email Headers: Delivery Path, Delays and Spam SignalsEmail headers record every server that touched a message, how long each held it, and whether the sender was who they claimed. Here is how to read them without guessing.8 min readโ†’๐Ÿ“„What to Send Your ISP or IT Support When Your Internet BreaksThe details support asks for every time โ€” browser, OS, IP, ISP, latency, device โ€” what each one is actually for, and how to collect all of them in one pass instead of ten.8 min readโ†’๐Ÿ“„Why Text From AI Tools Contains Invisible CharactersNarrow no-break spaces and zero-width characters turn up constantly in text from chatbots. Here is what they are, why the watermark theory is probably wrong, and which ones actually matter.8 min readโ†’