Что означает код HRESULT 0xC00D280D (NS_E_DRM_LICENSE_NOTRUSTEDCODEC)?

 
Предыдущий Следующий
NS_E_DRM_LICENSE_NOWDM NS_E_DRM_SOURCEID_NOT_SUPPORTED

NS_E_DRM_LICENSE_NOTRUSTEDCODEC

Значение в активном рабочем процессе

Первый практически значимый факт для NS_E_DRM_LICENSE_NOTRUSTEDCODEC состоит в следующем: кодек, выбранный для защищённого содержимого, не соответствует требованию лицензии к доверию. Этот результат выполняется внутри клиента Windows Media DRM, где реализация управляет механизмом DRM клиента: инициализирует компоненты безопасности, проверяет идентификаторы содержимого и лицензий, выполняет индивидуализацию, управляет цепочками лицензий и координирует возможности защищённого воспроизведения.

До изменения состояния компьютера выполните прямую проверку: определите двоичный файл декодера, его подпись и уровень безопасности, выбранные графом. Штатное описание AllStat приведено выше; этот раздел посвящён состоянию объекта и данным, позволяющим отличить этот результат от соседних ошибок Windows Media.

Сохраните исходное поколение

Полный инцидент этот результат связывает версию компонента DRM, KID, подпись заголовка содержимого, цепочку лицензий, вышестоящую лицензию, состояние индивидуализации, регистрации переносных устройств и локальную конфигурацию; минимальный набор корреляции для него — KID и хэш заголовка, версия компонента DRM, состояние индивидуализации, идентификаторы цепочки лицензий, результат поиска в реестре/конфигурации и первый обратный вызов клиента, сообщивший об ошибке.

Область сбоя остаётся узкой: Кодек, выбранный для защищённого содержимого, не соответствует требованию лицензии к доверию. Другое содержимое или другие действия могут оставаться допустимыми.

Подтверждение границы

  1. Сохраните этот результат и 0xC00D280D до очистки, перехода к резервному пути или смены контекста другим медиаэлементом.
  2. Выполните прямую проверку для него: определите двоичный файл декодера, его подпись и уровень безопасности, выбранные графом.
  3. Сравните сбой с заведомо исправным случаем, изменив только свойство, указанное этим условием: кодек, выбранный для защищённого содержимого, не соответствует требованию лицензии к доверию.
  4. Примените узкое исправление для этого результатаустановите доверенный поддерживаемый кодек или используйте содержимое для одобренного декодера.
  5. Свяжите он с текущим объектом внутренних компонентов клиента Windows Media DRM и запрошенным действием.
  6. Повторите то же действие с тем же содержимым и идентификатором устройства и убедитесь, что он не заменена другой ошибкой политики или доверия.

Модель сбоя

Сравнение состояния до и после для него имеет одну контролируемую переменную. До исправления кодек, выбранный для защищённого содержимого, не соответствует требованию лицензии к доверию; после исправления тот же процесс может установить доверенный поддерживаемый кодек или использовать содержимое, закодированное для одобренного декодера. Используйте заведомо исправный аналог только как контрольный случай; не заменяйте сбойный материал до фиксации его идентификаторов и хэшей.

Что остаётся неизвестным

Установленный факт состоит в следующем: Кодек, выбранный для защищённого содержимого, не соответствует требованию лицензии к доверию. Этот факт сам по себе не доказывает повреждение медиаданных, отсутствие декодера, общий сетевой сбой или недействительность прав для всех остальных действий.

Если Player, кодировщик, программа установки или уровень устройства позднее выдаёт более общую ошибку, сохраните он как первый конкретный результат. Объект и операция, связанные с ним, обычно диагностически ценнее более позднего результата очистки или сводного сообщения интерфейса.

Диагностический перечень

ПолеЗначение для него
Владелецоперация, API или обратный вызов, идентификатор объекта или сеанса и версия компонента или устройства, связанные с ним
Прямая проверкаопределите двоичный файл декодера, его подпись и уровень безопасности, выбранные графом
Входные данные политикизапрошенное действие и точное свойство лицензии, сертификата, профиля, выхода или регистрации, проверяемое при нём
Временное состояниедоверенное или системное время, интервал действия, последовательность запросов и номер повторной попытки, если они влияют на он
Результат нижнего уровнясамый ранний статус хранилища, сети, криптографического компонента, драйвера или поставщика перед итоговой оболочкой он

Сравнение соседних состояний

РезультатПочему он указывает на другую причину
NS_E_DRM_LICENSE_NOSVPлицензия требует возможности Secure Video Path, недоступной в выбранной среде
NS_E_DRM_LICENSE_NOWDMлицензия защищённого аудио требует драйверы WDM, однако активный путь не поддерживает WDM
NS_E_DRM_SOURCEID_NOT_SUPPORTEDидентификатор источника лицензии/содержимого требует возможности клиента, не реализованной в этой версии DRM

Практические действия

Следующая попытка имеет смысл только после точечного исправления: установите доверенный поддерживаемый кодек или используйте содержимое для одобренного декодера. Успех означает принятие того же запрошенного действия после этого точного изменения состояния, а не просто работу другого файла или устройства.

  • Этот результатлегко уничтожить; не заменяйте двоичные файлы DRM и не изменяйте состояние реестра до записи их версий и подписей, иначе несовместимость компонента нельзя будет отличить от повреждённого объекта лицензии.
  • Не изменяйте доверенное время, контроль отзыва, проверку сертификатов или политику выхода только ради подавления он; это обходит решение, а не исправляет его входные данные.
  • Сохраните один сбойный и один исправленный артефакт, чтобы устранение он можно было проверять при регрессионном тестировании.

Подтверждение того же рабочего процесса

В итоговом тесте он по возможности оставьте неизменными KID содержимого или хэш файла, запрошенное действие, пользователя или учётную запись, идентификатор устройства и маршрут выхода. Случай он разрешён только тогда, когда операция завершается без этого HRESULT и без замещающей ошибки соседней проверки лицензии, доверия, сеанса или политики.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.