Почему HEVC не работает в браузере на Windows 10–11 и чем тут (не) поможет HEVC Video Extensions
Когда кодек есть, а веб делает вид, что его нет
Сцена классическая. У нас есть:
Windows 10 или 11;
приличный браузер на Chromium: Chrome или Яндекс;
аккуратный MP4-файл, в котором видео закодировано в H.265/HEVC.
Файл лежит на веб-сервере, <video> прописан, MIME-тип корректный. Ты нажимаешь Play — и в этот момент браузер вспоминает, что живёт в реальности, где HEVC в вебе — политически токсичная тема.
Результат:
никаких ошибок в стиле «кодек не поддерживается»;
никакого драматичного диалога;
просто чёрный экран и немой протест.
Если повезёт, DevTools честно напишут, что «media could not be decoded». Если не повезёт — не напишут и этого.
И вот тут важно зафиксировать отправную точку:
Даже после установки HEVC Video Extensions в Windows 10–11 Chrome/Яндекс в большинстве сценариев не начинают воспроизводить HEVC из <video> как нормальный формат.
Причин много — от лицензий до политики браузеров и того, как именно они интегрируются с Media Foundation в Windows. Для нас важно другое: план «поставим системный HEVC — и браузер оживёт» не работает. Это не баг, это архитектурное решение.
Почему так: короткий ликбез без религиозных войн
H.265 / HEVC — кодек хороший, технологичный и в теории экономит трафик. Но у него есть один социальный дефект: он обложен лицензиями и патентными пулами.
Разработчики браузеров смотрят на это примерно так:
добавим полную поддержку HEVC — полезут вопросы лицензирования;
полезут вопросы лицензирования — полезут юристы;
полезут юристы — кончатся инженеры.
Поэтому типичный Chromium-браузер на Windows играет в аккуратную игру:
Сам HEVC не тащит.
Внутри собственного набора кодеков — VP8/VP9/AV1/H.264, но не HEVC.
Может спросить у системы.
Через Windows Media Foundation: «А у тебя, операционная система, HEVC случайно не завалялся?»
Но даже если он завалялся, браузер не обязан его использовать.
Это не часть спецификации, а локальный компромисс, который ещё и зависит от конкретной сборки, GPU, драйверов и настроения разработчиков.
На практике это означает простую вещь:
даже если Windows научилась понимать HEVC, браузер делает вид, что ничего не произошло.
Тогда зачем вообще нужен HEVC Video Extensions?
Парадокс в том, что HEVC-пакет для Windows действительно полезен — просто не для веба.
Он даёт:
поддержку HEVC в системном медиа-плеере;
поддержку в Photos/встроенном просмотрщике;
поддержку для UWP-приложений и софта, который честно ходит в Media Foundation за декодером.
Если ты работаешь с:
локальными файлами;
монтажными программами, умеющими использовать системные кодеки;
воспроизведением в UWP-приложениях;
то этот пакет действительно превращает HEVC-ролики из «мертвого веса» в нормально проигрываемый контент.
Но браузер с тегом <video> живёт в другой вселенной.
Он не обязан пользоваться этим кодеком, и во многих конфигурациях (особенно с Chrome/Яндекс) он просто этого не делает.
Так что честный диагноз такой:
Установка HEVC Video Extensions — полезная штука для системы в целом,
но никак не гарантирует воспроизведение HEVC в браузере.
«А что, если попытаться всё равно?»
Поставить HEVC системно всё равно может иметь смысл.
Например:
тебе нужно, чтобы пользователи могли скачанный MP4 (HEVC) открывать в стандартных приложениях;
у тебя есть корпоративное приложение на UWP;
ты используешь плеер, который работает поверх Media Foundation, но не в браузере.
В этом случае возникает второй уровень игры: как установить HEVC без Microsoft Store, если Store по какой-то причине:
отключён;
отрезан политикам;
выпилен сборщиком Windows;
или просто не открывается.
Дальше — подробная инструкция в стиле «делай раз, делай два».
Важно помнить весь путь: даже если ты доведёшь его до конца, в Chrome/Яндекс HEVC из <video> всё равно, скорее всего, работать не начнёт. Ты просто получишь системный декодер, с которым умеет работать Windows и её приложения.
Шаг 0. Протрезвление
Прежде чем начинать шаманский ритуал установки Appx, стоит задать себе три вопроса:
Зачем мне HEVC именно на уровне системы? Если ответ «чтобы всё заработало в браузере» — можно смело листать к выводу: так не будет. Какая у меня ОС?
Windows 10 или 11 — пойдёт.
Windows 7/8 — игру можно заканчивать: Media Foundation там HEVC не умеет в принципе.
Есть ли права администратора? Без них установка Appx с кодеком закончится быстро и безрезультатно.
Если на всё три вопроса ответ разумный — можно продолжать.
Шаг 1. Понимаем, что нам нужно: Appx или Msixbundle
HEVC Video Extensions в современном мире — это не «.exe-установщик», а UWP-пакет:
.appx или
.msixbundle.
Это архив с:
собственно библиотеками (decoder dll);
манифестом;
метаданными для системы.
Windows умеет ставить такие пакеты через:
Microsoft Store;
PowerShell (Add-AppxPackage);
App Installer (двойной клик, если компонент установлен).
Наша цель — получить этот пакет без участия Store-приложения.
Шаг 2. Достаём пакет без Microsoft Store
У HEVC Video Extensions есть уникальный идентификатор в экосистеме Microsoft. Нам он нужен, чтобы вытащить прямую ссылку на пакет.
ID можно считать своего рода «артикулом» кодека. По нему генерируются ссылки на реальные файлы.
Дальше сценарий обычно такой:
Находится сервис, который по этому идентификатору генерирует прямые ссылки на содержимое Microsoft Store (без запуска Store-приложения).
В веб-форму забивается ссылка вида https://www.microsoft.com/store/productId/….
На выходе получается список всех вариантов пакета — под разные архитектуры, версии Windows и т. д.
Нас будет интересовать:
x64-вариант,
с расширением .appx или .msixbundle,
без пометки arm в названии.
Имя файла обычно выглядит как нечто длинное и малосимпатичное: с номером версии, архитектурой и внутренним идентификатором.
После этого файл можно скачать любым браузером — он будет выглядеть как обычный бинарник, но внутри будет тот самый HEVC-кодек.
Шаг 3. Готовим правильную консоль (и не наступаем на грабли)
Следующий типичный момент, на котором спотыкаются даже опытные люди: запуск команды установки не в той консоли.
Есть три часто путаемых сущности:
cmd.exe
Классическая «чёрная консоль Windows».
Там команда Add-AppxPackage не работает вообще.
Максимум, что ты увидишь:
'Add-AppxPackage' is not recognized as an internal or external command…
PowerShell 7 (pwsh)
Модная кроссплатформенная PowerShell, которую ставят разработчики.
Там тоже может не быть нужного модуля, и команды установки UWP-пакетов часто не работают как ожидается.
Windows PowerShell 5.1
Это та самая PowerShell, встроенная в Windows 10–11, которая и умеет работать с Appx-пакетами штатным образом.
Нам нужна именно третья.
Как её открыть:
нажимаем «Пуск»;
вводим «Windows PowerShell» (без цифр 7);
кликаем правой кнопкой;
выбираем «Запуск от имени администратора».
Если всё сделано правильно, в заголовке окна будет что-то вроде:
Администратор: Windows PowerShell
Именно в этом окне можно работать с Appx.
Шаг 4. Устанавливаем HEVC-пакет через PowerShell
Допустим, файл с кодеком скачан и лежит где-нибудь вроде:
Если файл в формате .msixbundle, команда будет такой же — меняется только расширение.
Подождать окончания процесса. В идеале PowerShell молча вернётся на приглашение без ошибок.
Если система ругается на политику выполнения, подписи или что-то ещё:
стоит проверить, действительно ли консоль запущена от имени администратора;
убедиться, что файл скачан целиком и не повреждён;
в крайних случаях — временно ослабить ExecutionPolicy (но это уже игра для тех, кто понимает, чего именно он добивается).
После успешной установки в системе появится новый «опциональный компонент», который отвечает за декодирование HEVC для приложений, работающих через Media Foundation.
Шаг 5. Что реально изменилось после установки
Вот здесь самое интересное.
После установки HEVC Video Extensions:
стандартный видеоплеер Windows начинает нормально открывать HEVC-ролики;
системные библиотеки декодирования могут использоваться приложениями, которые ходят в Media Foundation напрямую;
некоторые «умные» программы обработки видео начинают воспринимать HEVC не как ругательство, а как рабочий кодек.
То есть местная экосистема Windows действительно обогащается новым умением.
Но что происходит с браузером?
Chrome, Яндекс и другие Chromium-потомки в типичной конфигурации продолжают считать HEVC неподдерживаемым;
через <video src="clip_hevc.mp4"> ситуация не меняется — браузер либо не начнёт воспроизведение, либо честно сообщит, что формат не декодируется;
никакой магической «интеграции» Web + HEVC от установки одного лишь Appx не включается.
Это не баг установки.
Это не «что-то пошло не так».
Это просто политика браузера: декодер в системе есть, но использовать его для веб-видео мы не обязаны.
Типичные иллюзии и реальность
Иллюзия 1: «Раз кодек системный, браузер обязан его взять»
Нет.
Браузер в лучшем случае:
посмотрит, что система умеет декодировать HEVC;
вздохнёт;
и всё равно скажет своим внутренним политикам: «мы это не поддерживаем».
Стандарт HTML5 не заставляет его использовать каждый доступный системный кодек. У браузеров своя матрица «поддерживается / не поддерживается», и HEVC туда сознательно не включён.
Иллюзия 2: «А вот Edge, говорят, играет»
Edge действительно иногда умеет больше, чем Chrome, когда дело касается интеграции с Media Foundation. Но здесь важно слово «иногда»:
это зависит от версии Edge;
от конфигурации системы;
от конкретной сборки Windows.
И главное — даже если Edge что-то где-то воспроизвёл, полагаться на это как на продуктовую функцию — довольно рискованный бизнес-план.
Иллюзия 3: «Если поставить HEVC всем пользователям, всё заработает»
Представим гипотетически, что:
всем пользователям Windows 10–11 в домене развернули HEVC Appx;
у всех нормальные GPU и свежие драйверы;
админы горды собой.
Что мы получаем?
локальные приложения действительно становятся умнее;
браузер — нет.
С точки зрения веба по-прежнему нужен fallback:
H.264;
AV1;
или адаптивный стриминг с несколькими дорожками и выбором формата на стороне клиента.
Когда установка HEVC всё-таки имеет смысл
Несмотря на всё выше сказанное, у системной установки HEVC есть свои вполне разумные применения:
просмотр локальных HEVC-файлов пользователями, которые не хотят ставить VLC и прочие сторонние плееры;
корпоративные приложения, работающие как UWP и использующие системные кодеки;
инструменты обработки видео, которые честно ходят в Media Foundation.
Во всех этих сценариях наличие HEVC Video Extensions в системе — полезное и оправданное действие.
Просто не надо связывать это напрямую с браузером.
То, что Media Foundation что-то умеет, ещё не значит, что Chromium-движок побежит этим пользоваться.
Что делать, если хочется HEVC именно в вебе
Строго говоря, ответ грустный, но честный:
HEVC в вебе под Windows через <video> в Chrome/Яндекс — это не то, на что можно опираться.
Никакая пляска с Appx-пакетом эту реальность не переписывает.
Поэтому если задача — реальный продакшен, а не академический эксперимент:
Не делать HEVC единственным форматом.
Хранить хотя бы дубль в H.264.
Смотреть в сторону AV1 (плюс H.264 как fallback).
Он бесплатен по лицензиям и гораздо лучше вписывается в политический климат браузеров.
Использовать HLS/DASH с несколькими дорожками.
HEVC можно оставить как «бонус», но не как фундамент.
HEVC в Windows в этом сценарии превращается из «спасителя браузера» в то, чем он и является на самом деле: системным кодеком для локальных приложений и спецкейсов.
Итог: трезвая картинка вместо магического мышления
Если убрать эмоции, получается такая схема:
Windows 10–11 умеет подключать HEVC через отдельный UWP-пакет (Appx/Msixbundle).
Этот пакет можно установить вручную, без Microsoft Store, через PowerShell.
После установки:
системные приложения начинают нормально воспринимать HEVC;
Media Foundation становится умнее;
но браузеры на Chromium продолжают жить в своей матрице решения, где HEVC — формат «не из этого мира».
Так что установка HEVC Video Extensions — это:
полезный системный апдейт;
удобная штука для локального видео;
а вот для <video> в Chrome/Яндекс — почти никак не меняющий игру фактор.
Если говорить по-взрослому, то стратегия «положимся на HEVC в вебе под Windows» — примерно из той же вселенной, что и «я завтра точно начну ходить в зал». Формально возможно. Практически — лучше не закладывать в архитектуру.
Зато инструкция по ручной установке HEVC Appx у тебя теперь есть. И это уже маленькая, но приятная победа над хаосом.