Что означает код HRESULT 0xC00D1B75 (NS_E_INVALIDPACKETSIZE)?

 
Предыдущий Следующий
NS_E_INVALIDCALL_WHILE_ARCHIVAL_RUNNING NS_E_PLUGIN_CLSID_INVALID

NS_E_INVALIDPACKETSIZE

Диагностический смысл помимо стандартного текста

Для NS_E_INVALIDPACKETSIZE (0xC00D1B75) диагностически значимое событие — проверка настроенного максимального размера пакета для кодированного выхода. Сохраняйте границу, вернувшую этот результат, вместе с исходным callback Encoder или вызовом COM.

Почему сеанс может дойти до этой точки

Encoder может предоставлять HTTP broadcast и отправлять поток в Windows Media Services. Размер packet, данные publishing point и генерация announcement относятся к распределению выхода и не зависят от захвата источника и выбора codec. В сеансе, возвращающем этот результат, именно здесь проверяется условие «проверка настроенного максимального размера пакета для кодированного выхода».

Этот фрагмент описывает диагностическую границу «невозможно сформировать сведения о трансляции для Quality VBR»; сохраните точный вход, состояние объекта и первый внутренний результат, затем измените только ответственное условие. Этот результат. Один конкретный способ получить это условие: parser конфигурации трактует пустое поле как ноль либо число байтов как килобайты. Он нужно сохранить поколение объекта и числовые параметры, а не только снимок итогового диалогового окна.

Поля трассировки, имеющие диагностическую ценность

ПолеЧто сохранить
Решающие значениячисловой размер пакета, режим транспорта, bitrate профиля и API, передавший значение
Объект, вернувший ошибкуoutput protocol, port, server и publishing point, maximum packet size, режим bitrate профиля, сгенерированные пути.nsc/.asx, состояние archive и первый distribution HRESULT
Сопоставление с сеансомто же поколение source group, индекс audience, идентичность объекта и последовательность callbacks, в которой был получен этот результат
Данные нижнего уровняпервый HRESULT COM, драйвера, файловой системы или codec, полученный до того, как Encoder сопоставил условие с ним
Контролируемое сравнениезаведомо исправный сеанс, в котором изменяется только настройка границы «проверка настроенного максимального размера пакета для кодированного выхода»

Матрица решений

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

Практическое влияние он ограничен переходом «broadcast and packet-output setup», которому принадлежит условие «проверка настроенного максимального размера пакета для кодированного выхода». Сам по себе он не доказывает повреждение всех входных данных, отсутствие всех кодеков или неработоспособность всей установки Windows Media. В показательном случае, когда parser конфигурации трактует пустое поле как ноль либо число байтов как килобайты, сохраните первый неуспешный вызов и идентификатор его объекта, чтобы более поздняя ошибка-оболочка не заменила данные о границе invalidpacketsize.

Путь принятия решения

  1. Зафиксируйте 0xC00D1B75, он, версию Encoder и точный вызов API или обращение к свойству, вернувшее ошибку.
  2. Экспортируйте текущую конфигурацию .wme или .prx конфигурацию, затем зафиксируйте числовой размер пакета, режим транспорта, bitrate профиля и API, передавший значение.
  3. Подтвердите границу, повторив исходную операцию и проверив API, входные данные и исходный HRESULT для состояния «невозможно сформировать сведения о трансляции для Quality VBR»; после исправления состояние «невозможно сформировать сведения о трансляции для Quality VBR» не должно возникать.
  4. Выполните одно контролируемое сравнение, изменив только это условие: использовать размер пакета в диапазоне, допустимом для выбранного выходного транспорта.
  5. После изменения пересоздайте затронутый объект Encoder; не предполагайте, что существующий graph автоматически отбросил прежнее состояние invalidpacketsize.

Коды с похожими симптомами, но другими владельцами

РезультатПочему это другая граница
NS_E_CANNOT_GENERATE_BROADCAST_INFO_FOR_QUALITYVBRВнесите одно изолированное изменение: использовать размер пакета в диапазоне, допустимом для выбранного выходного транспорта.

Безопасное восстановление

Не меняйте source и codec при проверке ошибки только в distribution; сначала подтвердите запись того же профиля в локальный файл и сохраните output configuration. Это позволяет повторно проверить тот же сеанс с для состояния «проверка настроенного максимального размера пакета для кодированного выхода»он без потери исходных диагностических данных.

Исходные материалы


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