Что означает код HRESULT 0xC00D1BE4 (NS_E_INVALID_PROFILE_CONTENTTYPE)?

 
Предыдущий Следующий
NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH NS_E_TRANSFORM_PLUGIN_NOT_FOUND

NS_E_INVALID_PROFILE_CONTENTTYPE

Где Encoder возвращает этот результат

0xC00D1BE4 (NS_E_INVALID_PROFILE_CONTENTTYPE) диагностически значимое событие — ContentType профиля не объявляет ни одного пригодного audio- или video-потока. Сохраняйте границу, вернувшую NS_E_INVALID_PROFILE_CONTENTTYPE, вместе с исходным callback Encoder или вызовом COM.

Профиль Windows Media Encoder объявляет типы содержимого и одну или несколько audiences для условия «ContentType профиля не объявляет ни одного пригодного audio- или video-потока». Каждая audience сопоставляет source indexes с audio, video, script или file streams и в MBR-профиле должна оставаться структурно согласованной с остальными audiences для состояния «ContentType профиля не объявляет ни одного пригодного audio- или video-потока». В сеансе, возвращающем NS_E_INVALID_PROFILE_CONTENTTYPE, именно здесь проверяется условие «ContentType профиля не объявляет ни одного пригодного audio- или video-потока».

Что уже успешно выполнено

Отдельные поля могут быть синтаксически допустимыми, тогда как полный профиль остаётся несогласованным между аудиториями или не соответствует группе источников в сеансе, возвращающем NS_E_INVALID_PROFILE_CONTENTTYPE. В показательном случае invalid profile contenttype пользовательский профиль содержит только script/file metadata, но используется для кодирования медиа. NS_E_INVALID_PROFILE_CONTENTTYPE следует проверять на объекте, сформировавшем ошибку, а не считать общим сбоем кодека или операционной системы.

Снимок состояния, который нужно сохранить

ПолеЧто сохранить
Решающие значениябиты ContentType и фактические определения потоков
Объект, вернувший ошибкуимя и content type профиля, число audiences и total bitrate, source indexes, типы потоков, language identifiers, выбранные audiences и результат IWMEncProfile2.Validate
Сопоставление с сеансомто же поколение source group, индекс audience, идентичность объекта и последовательность callbacks, в которой был получен NS_E_INVALID_PROFILE_CONTENTTYPE
Данные нижнего уровняпервый HRESULT COM, драйвера, файловой системы или codec, полученный до того, как Encoder сопоставил условие с NS_E_INVALID_PROFILE_CONTENTTYPE
Контролируемое сравнениезаведомо исправный сеанс, в котором изменяется только настройка границы «ContentType профиля не объявляет ни одного пригодного audio- или video-потока»

Как интерпретировать следующее наблюдение

НаблюдениеКак это интерпретировать
Наблюдение, подтверждающее этот результатРешающие данные: биты ContentType и фактические определения потоков. Они подтверждают условие «ContentType профиля не объявляет ни одного пригодного audio- или video-потока» в том же поколении объекта.
Наблюдение, указывающее на более ранний сбойЗафиксированные значения удовлетворяют правилу этой границы, но source, драйвер, COM activation или файловая операция раньше возвращает другой HRESULT на границе «ContentType профиля не объявляет ни одного пригодного audio- или video-потока».
Наблюдение, указывающее на более поздний сбойEncoder проходит эту границу («ContentType профиля не объявляет ни одного пригодного audio- или video-потока»), но затем codec, archive или broadcast sink завершается ошибкой на следующем этапе.
Проверка после исправленияВнесите одно изолированное изменение: объявить хотя бы один audio- или video-поток, соответствующий группе источников. После этого исходный вызов должен пройти ту же контрольную точку в сценарии «ContentType профиля не объявляет ни одного пригодного audio- или video-потока».

Практическое влияние NS_E_INVALID_PROFILE_CONTENTTYPE ограничен переходом «profile, audience and stream topology», которому принадлежит условие «ContentType профиля не объявляет ни одного пригодного audio- или video-потока». Для NS_E_INVALID_PROFILE_CONTENTTYPE, сам по себе этот результат не доказывает повреждение всех входных данных, отсутствие всех кодеков или неработоспособность всей установки Windows Media. В показательном случае, когда пользовательский профиль содержит только script/file metadata, но используется для кодирования медиа, сохраните первый неуспешный вызов и идентификатор его объекта, чтобы более поздняя ошибка-оболочка не заменила данные о границе invalid profile contenttype.

Контролируемая последовательность диагностики

  1. Зафиксируйте 0xC00D1BE4, NS_E_INVALID_PROFILE_CONTENTTYPE, версию Encoder и точный вызов API или обращение к свойству, вернувшее ошибку.
  2. Экспортируйте текущую конфигурацию .wme или .prx конфигурацию, затем зафиксируйте биты ContentType и фактические определения потоков.
  3. Для NS_E_INVALID_PROFILE_CONTENTTYPEпроверьте предварительное условие топологии профиля, аудиторий и потоков, не меняя одновременно источник, профиль и выходной приёмник.
  4. Выполните одно контролируемое сравнение, изменив только это условие: объявить хотя бы один audio- или video-поток, соответствующий группе источников.
  5. После изменения пересоздайте затронутый объект Encoder; не предполагайте, что существующий graph автоматически отбросил прежнее состояние invalid profile contenttype.

Близкие HRESULT с другим смыслом

РезультатПочему это другая граница
NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCHВнесите одно изолированное изменение: объявить хотя бы один audio- или video-поток, соответствующий группе источников. После этого исходный вызов должен пройти ту же контрольную точку в сценарии «ContentType профиля не объявляет ни одного пригодного audio- или video-потока».
NS_E_INVALID_FILE_BITRATEбитрейт потока передачи файлов недопустим для профиля
NS_E_MULTIPLE_FILE_BITRATESбитрейт потока передачи файлов различается между аудиториями

Исправление на правильном уровне

Для NS_E_INVALID_PROFILE_CONTENTTYPE, целевое исправление — объявить хотя бы один audio- или video-поток, соответствующий группе источников. Повтор имеет смысл только после изменения зафиксированного предварительного условия invalid profile contenttype.

Не удаляйте произвольные audiences при исправлении профиля: сначала экспортируйте .prx и сравните один и тот же source index между audiences при проверке «ContentType профиля не объявляет ни одного пригодного audio- или video-потока». Это позволяет повторно проверить тот же сеанс с NS_E_INVALID_PROFILE_CONTENTTYPE без потери исходных диагностических данных.

Технические ссылки для NS_E_INVALID_PROFILE_CONTENTTYPE


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