| Предыдущий | Следующий |
| NS_E_NO_PAL_INVERSE_TELECINE | NS_E_ACTIVE_SG_DEVICE_CONTROL_DISCONNECTED |
NS_E_ACTIVE_SG_DEVICE_DISCONNECTED
Как интерпретировать код в реальном сеансе кодирования
0xC00D1BA5 имеет имя NS_E_ACTIVE_SG_DEVICE_DISCONNECTED. Его практическая область — удаление или недоступность устройства захвата, используемого активной группой источников; это относится к видеозахвату и согласованию компрессора, а не ко всем компонентам воспроизведения Windows Media или Windows.
Механизм и точка сбоя
В сеансе, возвращающем NS_E_ACTIVE_SG_DEVICE_DISCONNECTED, живой видеоисточник проходит открытие устройства, согласование формата захвата, необязательное кадрирование и настройку окна предварительного просмотра, прежде чем кодек Encoder начнёт принимать кадры. К этой границе в контрольной точке отключение активного устройства SG относятся ширина, высота, формат пикселей и состояние драйвера.
Наличие устройства в результатах перечисления или получение кадра предварительного просмотра не доказывает, что запрошенный формат захвата может непрерывно передаваться кодировщику в сеансе, возвращающем NS_E_ACTIVE_SG_DEVICE_DISCONNECTED. Типичный способ воспроизведения: USB-устройство захвата отключают во время кодирования. Поэтому для NS_E_ACTIVE_SG_DEVICE_DISCONNECTED первый результат Encoder ценнее более позднего общего сообщения.
Матрица воспроизведения
| Поле | Что сохранить |
|---|---|
| Решающие значения | идентификатор экземпляра устройства, уведомление об удалении, время последнего образца и идентификатор активной группы источников |
| Объект, вернувший ошибку | моникер устройства, версия драйвера, запрошенные и собственные ширина и высота, частота кадров, сжатие и разрядность BITMAPINFOHEADER, состояние предварительного просмотра, результат подключаемого модуля источника и первая ошибка драйвера |
| Связь с сеансом | то же поколение группы источников, индекс аудитории, идентификатор объекта и последовательность обратных вызовов, которые привели к NS_E_ACTIVE_SG_DEVICE_DISCONNECTED |
| Данные нижнего уровня | первый HRESULT COM, драйвера, файловой системы или кодека, полученный до того, как Encoder сопоставил условие с NS_E_ACTIVE_SG_DEVICE_DISCONNECTED |
| Контролируемое сравнение | заведомо рабочий сеанс, в котором изменён только параметр, указанный границей отключение активного устройства SG |
Матрица диагностических данных
| Наблюдение | Как его интерпретировать |
|---|---|
| Наблюдение подтверждает этот результат | Решающими данными являются идентификатор экземпляра устройства, уведомление об удалении, время последнего образца и идентификатор активной группы источников. Они подтверждают удаление или недоступность устройства захвата, используемого активной группой источников, в том же поколении объекта. |
| Наблюдение указывает на более ранний сбой | Зафиксированные значения удовлетворяют правилу отключение активного устройства SG, но источник, драйвер, активация COM или файловая операция раньше возвращает другой HRESULT. |
| Наблюдение указывает на более поздний сбой | Encoder проходит эту границу — удаление или недоступность устройства захвата, используемого активной группой источников, — но затем на следующей стадии происходит сбой кодека, архива или приёмника трансляции. |
| Проверка после исправления | Внесите одно изолированное изменение: восстановите то же устройство либо остановите и пересоздайте группу с доступным источником. После этого исходный вызов отключение активного устройства SG должен пройти ту же контрольную точку. |
Практическое влияние NS_E_ACTIVE_SG_DEVICE_DISCONNECTED ограничено переходом видеозахвата и согласования компрессора, которому принадлежит удаление или недоступность устройства захвата, используемого активной группой источников. Само по себе NS_E_ACTIVE_SG_DEVICE_DISCONNECTED не доказывает, что повреждены все входные данные, отсутствуют все кодеки или полностью неработоспособна установка Windows Media. В показательном случае, когда USB-устройство захвата отключают во время кодирования, сохраните первый сбойный вызов и идентификатор его объекта, чтобы последующая оболочка не заменила данные отключение активного устройства SG.
Минимальный эксперимент
- Зафиксируйте
0xC00D1BA5,NS_E_ACTIVE_SG_DEVICE_DISCONNECTED, версию Encoder и точный вызов API или обращение к свойству, вернувшее ошибку. - Экспортируйте текущую конфигурацию
.wmeили.prx, затем сохраните идентификатор экземпляра устройства, уведомление об удалении, время последнего образца и идентификатор активной группы источников. - Для
NS_E_ACTIVE_SG_DEVICE_DISCONNECTEDпроверьте предварительное условие видеозахвата и согласования компрессора, не меняя одновременно источник, профиль и выходной приёмник. - Выполните одно контролируемое сравнение, изменив только это условие: восстановите то же устройство либо остановите и пересоздайте группу с доступным источником.
- После изменения пересоздайте затронутый объект Encoder, а не предполагайте, что существующий граф отбросил прежнее состояние отключение активного устройства SG.
Не объединяйте следующие результаты
| Результат | Почему это другая граница |
|---|---|
NS_E_UNEXPECTED_DISPLAY_SETTINGS | сеанс захвата экрана обнаруживает изменение геометрии дисплея или глубины цвета после настройки |
NS_E_UNSUPPORTED_ENCODER_DEVICE | открытие перечисляемого устройства, которое не поддерживается подключаемым модулем источника Encoder |
NS_E_NO_DATAVIEW_SUPPORT | запрос данных панели Encoder Video у источника или выходного пути, не способного предоставлять образцы предварительного просмотра |
Что изменить, а что оставить без изменений
Измените минимальное ответственное предварительное условие: восстановите то же устройство либо остановите и пересоздайте группу с доступным источником. При повторной проверке NS_E_ACTIVE_SG_DEVICE_DISCONNECTED сохраняйте неизменными все не связанные параметры источника, аудитории и выхода до повторения того же вызова.
После сохранения первой ошибки не продолжайте повторно обращаться к нестабильному драйверу захвата в том же процессе; закройте граф и проверьте один заведомо собственный формат в новом процессе в сеансе, возвращающем NS_E_ACTIVE_SG_DEVICE_DISCONNECTED.
Авторитетная документация для NS_E_ACTIVE_SG_DEVICE_DISCONNECTED
- IWMEncVideoSource2.Width и размер живого захвата.
- Структура BITMAPINFOHEADER.
- Проверка формата видеокомпрессора ICCompressQuery.
- Получение настроенного входа кодировщика.
Нужно найти другой код? Найти другой код состояния или ошибки.