- Уловка-32 — Windows, софт и железо без фанатизма/
- Статьи/
- Код 10 у аудиоустройства: звук есть, а треугольник не уходит/
Код 10 у аудиоустройства: звук есть, а треугольник не уходит
Содержание
Ноутбук 2015 года, Windows 10. После обновления драйверов «в один клик» в Диспетчере устройств появляется жёлтый треугольник: «Устройство с поддержкой High Definition Audio», код 10, «Запуск этого устройства невозможен». При этом звук из динамиков никуда не делся: видео играет, музыка играет.
Короткий ответ: ломается не тот звук, который вы слышите. На шине HDAUDIO у ноутбука висят два независимых устройства — звуковой кодек (Realtek, Conexant, IDT) и кодек HDMI-аудио на видеоядре. Первый продолжает работать, второй не стартует и показывает код 10. Лечится это не переустановкой Windows, а возвратом драйвера нужного поколения — если знать, где смотреть.
Дальше — разбор на реальном случае: ASUS X550LB, Windows 10 Pro build 19045, код 10 появился после Driver Booster, откат из образа Acronis и переустановка системы с флешки не помогли.
Сначала выясните, какое именно устройство с ошибкой #
Первое, что делает большинство, — сносит драйвер Realtek. Это ошибка: если звук в динамиках есть, кодек работает. Прежде чем что-то удалять, посмотрите список звуковых устройств и их HWID.
В PowerShell от администратора:
Get-PnpDevice -Class MEDIA | Format-List Status,Present,Problem,FriendlyName,InstanceId
В нашем случае вывод был такой (сокращённо):
Status : OK Problem : CM_PROB_NONE Realtek High Definition Audio
InstanceId : HDAUDIO\FUNC_01&VEN_10EC&DEV_0233&SUBSYS_104311AF&REV_1000\4&9875805&0&0001
Status : Error Problem : 10 Устройство с поддержкой High Definition Audio
InstanceId : HDAUDIO\FUNC_01&VEN_8086&DEV_2807&SUBSYS_80860101&REV_1000\4&3AB4E5A4&0&0001
Расшифровка простая:
VEN_10EC— Realtek,DEV_0233— модель кодека. СтатусOK,Problem= 0. Всё хорошо.VEN_8086— Intel,DEV_2807— кодек HDMI-аудио видеоядра, а не звуковая карта ноутбука. Именно он с кодом 10.
Следующий шаг — чем это устройство на самом деле занято:
Get-PnpDeviceProperty -InstanceId 'HDAUDIO\FUNC_01&VEN_8086&DEV_2807&SUBSYS_80860101&REV_1000\4&3AB4E5A4&0&0001' -KeyName DEVPKEY_Device_DriverProvider,DEVPKEY_Device_DriverVersion,DEVPKEY_Device_DriverInfPath
Если в ответе Provider = Microsoft и InfPath = hdaudio.inf, картина ясна: устройство сидит на универсальном драйвере Windows, а не на родном Intel Display Audio. Универсальный драйвер такие кодеки часто запускает нормально, но конкретно этот — не смог.
Почему упал именно HDMI-кодек #
Драйверы звука в Windows — это не «один драйвер на звук». Для каждого кодека существует свой пакет, и пакеты привязаны к поколению железа через HWID.
Intel Display Audio для Haswell (2013–2014) в своём INF перечисляет кодеки DEV_2804…DEV_280B, включая наш DEV_2807. Отдельная сборка того же драйвера для Broadwell содержит только DEV_2809. Внешне это один и тот же «Intel Display Audio», разница — в одной строке INF.
Driver Booster поставил пакет «посвежее» — тот, что предназначен для Broadwell. Для нашего кодека в нём просто нет строки соответствия. Дальше сработала обычная логика Windows: подходящего вендорского пакета нет, значит берём универсальный hdaudio.inf из состава системы. Он устройство видит, пытается запустить и получает ошибку. Отсюда код 10 и название «Устройство с поддержкой High Definition Audio» вместо «Аудио Intel(R) для дисплеев».
Проверить гипотезу можно, не заходя ни в какие каталоги. В хранилище драйверов лежит INF того пакета, который сейчас установлен:
$dir = Get-ChildItem 'C:\Windows\System32\DriverStore\FileRepository' -Directory -Filter 'intcdaud*' | Select-Object -First 1
$dir.FullName
Select-String -Path "$($dir.FullName)\intcdaud.inf" -Pattern 'DEV_28' | ForEach-Object { $_.Line.Trim() }
Если в выводе нет вашего DEV_xxxx — пакет не тот, и никакие переустановки его не исправят.
Тот же поиск по всей системе показывает, есть ли правильный INF хоть где-то на диске:
Get-ChildItem 'C:\Windows\INF','C:\Windows\System32\DriverStore\FileRepository' -Recurse -Filter '*.inf' -ErrorAction SilentlyContinue |
Select-String -Pattern 'DEV_2807' -List |
Select-Object -ExpandProperty Path
Пустой ответ означает: драйвера нужного поколения в системе нет, надо добывать его отдельно. В нашем случае так и было.
Почему откат из образа не помогает #
Самый болезненный момент. Пользователь восстанавливает систему из полной резервной копии, сделанной до установки Driver Booster, загружается — треугольник на месте, версия драйвера та же. Ощущение, что проблема «в железе».
Обычно дело в двух слоях, которые откат закрывает не одновременно.
Первый слой — пакет драйвера в хранилище. Его откат из образа действительно возвращает, если образ старше удаления пакета.
Второй слой — сам универсальный драйвер hdaudio.sys, который приходит с обновлениями Windows. Его версия в нашем случае — 10.0.19041.7802 с датой 10.10.2026, то есть это свежий inbox-драйвер, доставленный вместе с накопительными обновлениями. После загрузки Центр обновления Windows спокойно доставляет тот же самый драйвер заново — версия не меняется, ошибка возвращается, и выглядит это как «откат не сработал».
Практический вывод: откат имеет смысл только вместе с блокировкой автоматической установки драйверов из Центра обновления, иначе вы лечите симптом, а через десять минут после загрузки получаете его обратно. И проверять «применился ли образ» надо не по ощущениям, а по версии драйвера и пути INF.
Как вернуть драйвер нужного поколения #
Правильный пакет ищется по HWID в каталоге обновлений Microsoft (Microsoft Update Catalog). Это официальный источник: те же драйверы, что Windows Update раздаёт по сети, только скачать можно вручную и без ожидания очереди.
- Открыть
https://www.catalog.update.microsoft.com. - В строку поиска вставить HWID целиком, например
HDAUDIO\FUNC_01&VEN_8086&DEV_2807. - Выбрать пакет
Intel(R) Corporation - MEDIAподходящей даты и скачать.cab(в нашем случае — Intel Display Audio 6.16.0.3208, 235 КБ).
Дальше пакет разворачивается и ставится вручную:
cd $env:USERPROFILE\Downloads
New-Item -ItemType Directory -Force -Path C:\intcdaud | Out-Null
expand -F:* intcdaud.cab C:\intcdaud
dir C:\intcdaud
В папке должны появиться три файла: IntcDAud.inf, IntcDAud.sys, IntcDAud.cat. Каталожный файл .cat обязателен — без него Windows откажется ставить пакет.
Установка через Диспетчер устройств:
- Правый клик по устройству с ошибкой → «Обновить драйвер».
- «Выполнить поиск драйверов на этом компьютере».
- «Указать папку» →
C:\intcdaud. - «Далее» → перезагрузка.
Важная деталь: не «Выбрать драйвер из списка доступных драйверов». Этот список показывает только то, что уже лежит в хранилище, — а правильного пакета там как раз нет, поэтому пункт «Intel Display Audio» в нём не появится, и это ни о чём не говорит.
Альтернатива через консоль:
pnputil /add-driver C:\intcdaud\IntcDAud.inf /install
На практике pnputil добавляет пакет в хранилище, но уже установленное устройство на него не всегда переключает. Если после перезагрузки имя устройства не изменилось на «Аудио Intel(R) для дисплеев», используйте путь через «Указать папку» — он привязывает драйвер к устройству явно.
Устройство пропало из Диспетчера — это не поломка #
После установки правильного драйвера и перезагрузки треугольник исчез, а в списке звуковых устройств остался один Realtek. Владелец ноутбука решил, что стало хуже.
На самом деле у устройства поменялся статус:
Status : Unknown
Present : False
Problem : CM_PROB_PHANTOM
FriendlyName : Аудио Intel(R) для дисплеев
CM_PROB_PHANTOM — не ошибка драйвера, а «запись в системе есть, железа сейчас нет». Кодек HDMI-аудио на многих ноутбуках поднимается только при подключённом внешнем дисплее: нет кабеля в порту — нет устройства. Диспетчер устройств такие записи по умолчанию скрывает, поэтому в списке остаётся один Realtek.
Проверка одна: подключить ноутбук к телевизору или монитору по HDMI. Появилось «Аудио Intel(R) для дисплеев» со статусом OK — всё на месте. Не появилось — устройство действительно не задействовано на этой модели, и тогда его запись можно удалить через «Вид → Показать скрытые устройства», хуже не станет.
Если HDMI-звук вам не нужен вообще (ноутбук для документов и браузера), допустимый финал — правый клик по устройству → «Отключить устройство». Ошибки не будет, звук из динамиков останется.
Чего делать не надо #
Четыре действия, которые в такой ситуации только удлиняют дорогу.
Ставить Driver Booster и его аналоги. На железе 2015 года «рекомендованные драйверы 2026 года» — лотерея с плохими шансами. Пакеты в таких программах подбираются по данным каталога, а совместимость с конкретным поколением кодека проверяется плохо. Ровно это и произошло: обновился драйвер «того же» HDMI-аудио, но другого поколения.
Чистить звуковые драйверы через DDU. Display Driver Uninstaller — инструмент для видеодрайверов. После его применения к звуку легко остаться без пакета вообще, что мы и увидели: родной Realtek удалось вернуть только из собственной резервной копии.
Удалять пакеты из хранилища драйверов «на глаз». В Driver Store нет мусора по весу: пакет на 4 МБ — это может быть как раз рабочий драйвер, без которого устройство не поднимется. Удалять стоит только тот пакет, про который точно известно, что он не тот.
Удалять ветки реестра с «фильтрами» наугад. Совет про два фильтра в ключе класса {4d36e96c-e325-11ce-bfc1-08002be10318} относится к другой ситуации — когда после сноса Realtek остались мёртвые фильтр-драйверы. Если в выводе Problem = 10, а InfPath = hdaudio.inf, проблема не в фильтрах, и правка реестра ничего не даст.
Проверка результата #
После всех шагов состояние проверяется одной строкой:
Get-PnpDevice -Class MEDIA | Format-List Status,Present,Problem,FriendlyName,InstanceId
Что должно быть:
- кодек Realtek —
Status OK,Present True,Problem CM_PROB_NONE; - HDMI-аудио Intel — либо
OK(если подключён внешний дисплей), либоUnknown / CM_PROB_PHANTOM(если нет); - ни у одного устройства нет
Problem = 10.
Если код 10 вернулся после перезагрузки, значит Центр обновления снова подставил свой универсальный драйвер. В этом случае сначала отключают автоматическую установку драйверов из Windows Update, потом повторяют привязку — иначе круг замкнётся.
Полный отчёт одной командой #
Если непонятно, с чего начать, или нужно показать состояние мастерам, есть готовый скрипт. Он только читает: собирает версию системы, устройства с ошибками, свойства звуковых устройств, пакеты драйверов из хранилища, значения фильтров в реестре и последние сбои PnP. Ничего не устанавливает, не удаляет и не меняет.
cd $env:USERPROFILE\Downloads
Invoke-WebRequest -Uri "https://trick32.ru/files/audio-diag.ps1" -OutFile audio-diag.ps1
powershell -ExecutionPolicy Bypass -File .\audio-diag.ps1
Отчёт сохранится на Рабочий стол файлом audio-diag_<дата>.txt. Запускать лучше от администратора: без прав часть сведений о пакетах драйверов будет пропущена.
И последнее про «переустановить Windows». В такой ситуации это не нужно: чистка хранилища, привязка драйвера и проверка занимают двадцать минут. Если система уже разъехалась настолько, что не помогает ничего, есть промежуточный вариант — обновление на месте с ISO той же редакции, с сохранением файлов и программ. Он пересобирает драйверы и реестр, но не превращает ноутбук в чистый лист.
FAQ #
Код 10 — это драйвер или неисправное железо? Чаще драйвер и его привязка. Быстрый признак железа: если рядом есть работающее устройство того же класса (в нашем случае Realtek со звуком), то сам контроллер жив, а проблема локальная — в пакете или в несовпадении HWID.
Можно просто удалить устройство с треугольником? Можно, но если подходящего пакета в системе нет, Windows поставит на его место тот же универсальный драйвер, и ошибка вернётся. Удаление помогает только когда рядом уже лежит правильный INF.
Обязательно ли чинить HDMI-звук, если я не подключаю телевизор? Нет. Код 10 на этом устройстве не влияет ни на динамики, ни на микрофон, ни на наушники. Если внешний дисплей не нужен, устройство отключают — и вопрос закрыт.
Поможет ли восстановление из резервной копии? Только если копия действительно старше момента, когда был установлен неподходящий пакет, и если после загрузки Windows Update не доставит свой драйвер заново. Проверять надо по версии драйвера и пути INF, а не по внешнему виду Диспетчера устройств.
Если ноутбук нужен «чтобы работал», а разбираться с драйверами и хранилищем нет времени — я подключаюсь удалённо, нахожу устройство с ошибкой по HWID, подбираю пакет нужного поколения и привязываю его. Подробности и контакты — на странице помощи с Windows и Office. Тема «виноват не драйвер» разобрана ещё в одном кейсе: ноутбук не выходит из сна.