# Video codecs: why some files will not play

> What Windows decodes out of the box, which codecs need a paid extension, and how to tell a codec problem from a broken file.

**Tested on**

- Build: 26300.9457 / 26100.33650
- Edition: Pro (26H2) / Server
- Architecture: x64
- Evidence: E1
- Verified: 2026-10-29

## The short answer

Windows ships decoders for the common web codecs (H.264, VP9, AV1 in current builds) and **sells** some as extensions — most notably **HEVC (H.265)**.

So "this video will not play" usually means one of:

1. **HEVC** without the extension (or without hardware decode).
2. **A container the player does not parse** (MKV in some apps).
3. **A broken or partial file** — not a codec issue at all.
4. **DRM** — the file plays but shows an error about rights.

## Check what the machine can decode

```powershell
# GPU decode capabilities (dxdiag writes a report)
dxdiag /t $env:TEMP\dxdiag.txt
Select-String -Path $env:TEMP\dxdiag.txt -Pattern 'H264|HEVC|AV1|VP9|Decoder' | Select-Object -First 20
```

`dxdiag` lists the **DDI** decode profiles the GPU/driver exposes. Hardware decode present + codec extension missing = software decode is also missing; hardware present + extension present = smooth playback with low CPU.

## The HEVC situation

- **HEVC Video Extensions** is a paid (or device-bundled) package from the Store.
- Some OEMs preinstall it; most DIY systems do not.
- Hardware decode requires the GPU generation to support it — otherwise even with the extension, playback is CPU-bound.

The honest summary: HEVC is licensed technology, and Microsoft charges for the decoder. A third-party player that bundles its own decoder is the usual workaround.

## Codec vs container vs file

| Layer | Example | Symptom when wrong |
|---|---|---|
| **Container** | MP4, MKV, MOV | player refuses to open at all |
| **Video codec** | H.264, HEVC, AV1 | opens, then "cannot play" or green/black |
| **Audio codec** | AAC, AC-3, DTS | video plays, no sound |
| **DRM** | PlayReady/Widevine | error mentioning rights/licence |

"Green screen with audio" is a **decoder** problem. "No audio, video fine" is an **audio codec** problem. "Will not open" is usually the **container**.

## Playback performance

- **Hardware decode** keeps CPU low and battery long; software decode on a laptop drains and stutters at 4K.
- **HDR content** needs the whole chain (see [the HDR chain](https://winbook.fyi/en/hardware/display/hdr-chain/)).
- **High-bitrate 4K** may stutter on an old GPU even with the right codec — that is bandwidth, not licensing.

> **Caution: Codec packs from random sites are a real risk**
>
> "All-in-one codec packs" install dozens of filters, some unsigned, some abandoned, and they can break playback in apps that worked. Prefer a player that bundles its own decoders, or the official extension.

## A sane decision tree

1. Does the file play in a **browser** (which has its own decoders)? If yes, the file is fine — the desktop player lacks a codec.
2. Does it play in a **modern player** (VLC/MPV class)? If yes, no Windows change needed.
3. Only if you need it in **Windows' own apps** (Photos, Media Player, Explorer preview) install the official extension.
4. If it plays nowhere, verify the file (hash, size, partial download).

## Related

- [Screen recording with Game Bar](https://winbook.fyi/en/windows/media/capture/)
- [Windows HDR chain](https://winbook.fyi/en/hardware/display/hdr-chain/)
- [Colour management and ICC](https://winbook.fyi/en/windows/media/colour-management/)

## Lab boundary

E1. Codec support and extension licensing are documented by Microsoft. The lab VMs decode software-only, so no hardware-decode comparison was made.

## Sources

- [Microsoft Learn — Media Foundation](https://learn.microsoft.com/en-us/windows/win32/medfound/)
- [Microsoft Learn — Display drivers](https://learn.microsoft.com/en-us/windows-hardware/drivers/display/)
- [Microsoft Learn — Windows 11 overview](https://learn.microsoft.com/en-us/windows/whats-new/windows-11-overview)

---

Source: https://winbook.fyi/en/windows/media/codecs/
