Why HEVC Doesn’t Work in Browsers on Windows 10–11 (and Why HEVC Video Extensions Don’t Fix It)
When the codec exists, but the web pretends it doesn’t
The scene is a classic one. We have:
Windows 10 or 11
A respectable Chromium-based browser: Chrome or Microsoft Edge
A neat MP4 file with video encoded in H.265/HEVC
The file sits on a web server, the <video> tag is in place, the MIME type is correct. You hit Play — and at that exact moment the browser remembers it lives in a reality where HEVC on the web is a politically toxic topic.
The result:
no friendly “codec not supported” error;
no dramatic warning dialog;
just a black screen and silent protest.
If you’re lucky, DevTools will honestly say “media could not be decoded”. If you’re not — it won’t even bother.
And this is the key baseline to lock in:
Even after installing HEVC Video Extensions on Windows 10–11, Chrome/Edge usually still won’t play HEVC from a <video> tag as a normal web format.
There are many reasons — licensing, browser policy, how (and whether) the browser integrates with Windows Media Foundation. But the practical takeaway is simple:
The plan “install system HEVC and the browser will magically work” does not work.
This is not a bug. It’s an architectural decision.
Why this happens: a short, non-religious primer
H.265 / HEVC is a good, modern codec that theoretically saves bandwidth. But it has one social defect: it’s wrapped in patents and licensing pools.
Browser developers look at this roughly like this:
add full HEVC support → licensing questions appear;
licensing questions appear → lawyers appear;
lawyers appear → engineers disappear.
So a typical Chromium-based browser on Windows plays a careful game:
It does not ship HEVC itself. Built-in codecs include VP8/VP9/AV1/H.264 — but not HEVC. It may ask the OS. Via Windows Media Foundation: “Hey, OS, do you happen to have HEVC?” But even if the OS does — the browser is not obligated to use it.
This isn’t part of any web spec. It’s a local compromise that depends on the exact browser build, GPU, drivers, and the mood of the maintainers.
In practice, that means one simple thing:
Even if Windows can decode HEVC, the browser often behaves as if nothing happened.
So why does HEVC Video Extensions exist at all?
Here’s the paradox: the HEVC package for Windows is genuinely useful — just not for the web.
It enables:
HEVC playback in the system video player
support in Photos / built-in viewers
decoding for UWP apps and software that honestly uses Media Foundation
If you work with:
local files;
editing tools that rely on system codecs;
UWP applications;
then this package turns HEVC videos from “dead weight” into playable media.
But a browser using <video> lives in a different universe.
It is not required to use that codec — and in many setups (especially Chrome/Edge), it simply doesn’t.
The honest diagnosis:
Installing HEVC Video Extensions is useful for the system,
but it does not guarantee HEVC playback in the browser.
“What if I try anyway?”
Installing HEVC system-wide can still make sense.
For example:
you want users to open downloaded HEVC MP4 files in default Windows apps;
you have a corporate UWP application;
you use a Media Foundation–based player outside the browser.
That’s where the next level begins:
how to install HEVC without Microsoft Store, when Store is:
disabled;
blocked by policy;
removed from the build;
or simply broken.
What follows is a step-by-step, “do this, then that” guide.
Just remember the full path: even if you finish it perfectly, Chrome/Edge will still most likely not play HEVC from <video>. You’ll only get a system decoder for Windows and its native apps.
Step 0. Sobering up
Before starting the Appx ritual, ask yourself three questions:
Why do I need HEVC at the system level?
If the answer is “so it works in the browser” — skip to the conclusion. It won’t.
Which OS am I on?
Windows 10 or 11 — fine.
Windows 7/8 — game over; Media Foundation doesn’t support HEVC there.
Do I have admin rights?
Without them, Appx installation will fail quickly and silently.
If all three answers make sense — continue.
Step 1. What you’re installing: Appx or Msixbundle
HEVC Video Extensions today is not an .exe. It’s a UWP package:
.appx, or
.msixbundle
Inside you’ll find:
decoder DLLs;
a manifest;
system metadata.
Windows can install these via:
Microsoft Store;
PowerShell (Add-AppxPackage);
App Installer (double-click, if present).
Our goal: get the package without using Store.
Step 2. Getting the package without Microsoft Store
HEVC Video Extensions has a unique Store product ID. Think of it as the codec’s SKU.
Typical flow:
use a service that generates direct download links for Store packages;
paste a URL like https://www.microsoft.com/store/productId/...;
receive a list of packages for different architectures.
You want:
x64,
.appx or .msixbundle,
not ARM.
The filename will be long, ugly, and full of version numbers — that’s normal.
Download it like any other file. Inside is your HEVC decoder.
Step 3. The right console (this is where many fail)
Three commonly confused things:
cmd.exe
Classic black console. Add-AppxPackage does not work there.
PowerShell 7 (pwsh)
Modern, cross-platform PowerShell. Often lacks proper Appx support.
Windows PowerShell 5.1
The built-in PowerShell in Windows 10–11. This is the one you need.