Что означает код HRESULT 0xC00D1BE3 (NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH)?

 
Предыдущий Следующий
NS_E_INVALID_PIXEL_ASPECT_RATIO NS_E_INVALID_PROFILE_CONTENTTYPE

NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH

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

0xC00D1BE3 имеет имя NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH. Его практическая область — разноязычные потоки одной аудитории не имеют совместимых свойств мультимедиа; это относится к топологии профиля, аудиторий и потоков, а не ко всем компонентам воспроизведения Windows Media или Windows.

Механизм и точка сбоя

В сеансе, возвращающем NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH, профиль Windows Media Encoder объявляет типы содержимого и одну или несколько аудиторий. Каждая аудитория сопоставляет индексы источников с аудио-, видео-, скриптовыми или файловыми потоками и в контрольной точке несоответствие языка и типа содержимого аудитории должна оставаться структурно согласованной с другими аудиториями профиля с несколькими битрейтами.

Отдельные поля могут быть синтаксически допустимыми, тогда как полный профиль остаётся несогласованным между аудиториями или не соответствует группе источников в сеансе, возвращающем NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH. Типичный способ воспроизведения: альтернативные аудиодорожки на разных языках используют разные кодеки в одной аудитории. Поэтому для NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH первый результат Encoder ценнее более позднего общего сообщения.

Матрица воспроизведения

ПолеЧто сохранить
Решающие значенияязыковые записи, тип потока, кодек или формат и индекс источника внутри аудитории
Объект, вернувший ошибкуимя и тип содержимого профиля, число аудиторий и общий битрейт, индексы источников, типы потоков, идентификаторы языков, выбранные аудитории и результат IWMEncProfile2.Validate
Связь с сеансомто же поколение группы источников, индекс аудитории, идентификатор объекта и последовательность обратных вызовов, которые привели к NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH
Данные нижнего уровняпервый HRESULT COM, драйвера, файловой системы или кодека, полученный до того, как Encoder сопоставил условие с NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH
Контролируемое сравнениезаведомо рабочий сеанс, в котором изменён только параметр, указанный границей несоответствие языка и типа содержимого аудитории

Матрица диагностических данных

НаблюдениеКак его интерпретировать
Наблюдение подтверждает этот результатРешающими данными являются языковые записи, тип потока, кодек или формат и индекс источника внутри аудитории. Они подтверждают, что разноязычные потоки одной аудитории не имеют совместимых свойств мультимедиа в том же поколении объекта.
Наблюдение указывает на более ранний сбойЗафиксированные значения удовлетворяют правилу несоответствие языка и типа содержимого аудитории, но источник, драйвер, активация COM или файловая операция раньше возвращает другой HRESULT.
Наблюдение указывает на более поздний сбойEncoder проходит эту границу — разноязычные потоки одной аудитории не имеют совместимых свойств мультимедиа, — но затем на следующей стадии происходит сбой кодека, архива или приёмника трансляции.
Проверка после исправленияВнесите одно изолированное изменение: задайте языковым вариантам одинаковые свойства потока, требуемые этой аудиторией. После этого исходный вызов несоответствие языка и типа содержимого аудитории должен пройти ту же контрольную точку.

Практическое влияние NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH ограничено переходом топологии профиля, аудиторий и потоков, которому принадлежит несовместимость свойств разноязычных потоков одной аудитории. Само по себе NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH не доказывает, что повреждены все входные данные, отсутствуют все кодеки или полностью неработоспособна установка Windows Media. В типичном случае, когда альтернативные аудиодорожки на разных языках используют разные кодеки в одной аудитории, сохраните первый сбойный вызов и идентификатор его объекта, чтобы последующая оболочка не заменила данные несоответствие языка и типа содержимого аудитории.

Минимальный эксперимент

  1. Зафиксируйте 0xC00D1BE3, NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH, версию Encoder и точный вызов API или обращение к свойству, вернувшее ошибку.
  2. Экспортируйте текущую конфигурацию .wme или .prx, затем сохраните языковые записи, тип потока, кодек или формат и индекс источника внутри аудитории.
  3. Для NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH проверьте предварительное условие топологии профиля, аудиторий и потоков, не меняя одновременно источник, профиль и выходной приёмник.
  4. Выполните одно контролируемое сравнение, изменив только это условие: задайте языковым вариантам одинаковые свойства потока, требуемые этой аудиторией.
  5. После изменения пересоздайте затронутый объект Encoder, а не предполагайте, что существующий граф отбросил прежнее состояние несоответствие языка и типа содержимого аудитории.

Не объединяйте следующие результаты

РезультатПочему это другая граница
NS_E_INVALID_FILE_BITRATEбитрейт потока передачи файлов недопустим для профиля
NS_E_INVALID_PROFILE_CONTENTTYPEContentType профиля не объявляет ни одного пригодного аудио- или видеопотока
NS_E_MULTIPLE_FILE_BITRATESбитрейт потока передачи файлов различается между аудиториями

Что изменить, а что оставить без изменений

Измените минимальное ответственное предварительное условие: задайте языковым вариантам одинаковые свойства потока, требуемые этой аудиторией. При повторной проверке NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH сохраняйте неизменными все не связанные параметры источника, аудитории и выхода до повторения того же вызова.

Не исправляйте профиль удалением произвольных аудиторий; сначала экспортируйте .prx и сравните один и тот же индекс источника во всех аудиториях сеанса, возвращающего NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH.

Авторитетная документация для NS_E_AUDIENCE__LANGUAGE_CONTENTTYPE_MISMATCH


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