This browser
checking
- navigator.mediaCapabilities
- checking
- MediaSource.isTypeSupported
- checking
- HTMLMediaElement.canPlayType
- checking
H.264 (AVC)
The web's default video codec. YouTube, Zoom, almost every MP4 from a camera that is not an iPhone.
HEVC (H.265)
Apple's ecosystem codec. iPhone camera rolls, 4K Blu-ray, many drones. Safari plays it; Firefox usually does not.
VP9
Google's codec inside WebM. YouTube's workhorse before AV1; still common on Android and Chrome OS.
AV1
The new bandwidth-saver on YouTube and Netflix. Royalty-free; decode cost is the question, not the license.
Dolby Vision
HDR with per-scene metadata. Streaming apps and some iPhone videos; needs a decoder plus a display path.
AAC
The MP4 audio default. Every iTunes track, most phone videos, almost every HLS stream.
Opus
WebRTC and WebM audio. Discord, Meet, and most in-browser calls.
AC-3
Dolby Digital. Broadcast, Blu-ray, and many TV recordings. Often licensed, so browsers skip it.
E-AC-3 / Atmos
Dolby Digital Plus, including Atmos JOC. Streaming apps; still `ec-3` in the codec string.
FLAC
Lossless audio. Bandcamp, some WebM, a few MP4 soundtracks.
MP3
Everywhere, still. Downloads, podcasts, and `mp4a.40.34` when it sits inside MP4.
Typical browser support
The table is a typical picture. Trust the live rows above — HEVC on Chrome depends on the OS and GPU, not the Chrome version string.
| API / codec | Chrome | Edge | Firefox | Safari |
|---|---|---|---|---|
| MediaCapabilities.decodingInfoChrome, Edge, Firefox, Safari. One call can still reject. | ✓ | ✓ | ✓ | ✓ |
| MediaSource.isTypeSupportedSafari MSE is real but narrower than Chromium. | ✓ | ✓ | ✓ | ◐ |
| HTMLMediaElement.canPlayTypeReturns "" / maybe / probably — not a boolean. | ✓ | ✓ | ✓ | ✓ |
| HEVC (hvc1 / hev1)Safari: yes. Firefox: generally no. Chrome/Edge: OS and GPU. | ◐ | ◐ | ✗ | ✓ |
| AV1 (av01)Chrome/Edge/Firefox: yes. Safari 17+: yes on Apple silicon. | ✓ | ✓ | ✓ | ◐ |
This browser, right now: checking