| Предыдущий | Следующий |
| NS_E_AUDIODEVICE_BADFORMAT | NS_E_VIDEODEVICE_UNEXPECTED |
NS_E_VIDEODEVICE_BUSY
Граница результата
Когда возвращается NS_E_VIDEODEVICE_BUSY со значением 0xC00D1B64, проверяемое состояние — Выбранное устройство видеозахвата занято. Диагностика должна быть привязана к маркер состояния «videodevice busy» и к первому вызову, который его обнаружил.
Свидетельства
Сохраните capture device/pin, width, height, subtype, stride, bit depth и состояние graph. Затем свяжите их с первой временной меткой, на которой наблюдалось «Выбранное устройство видеозахвата занято», чтобы не смешать разные поколения операции.
| Наблюдение | Диагностический вывод |
|---|---|
| Первый вызов возвращает NS_E_VIDEODEVICE_BUSY | Он подтверждает границу «Выбранное устройство видеозахвата занято» только для текущего объекта и generation. |
| После целевого изменения NS_E_VIDEODEVICE_BUSY исчезает | Это поддерживает связь отказа с условием «Выбранное устройство видеозахвата занято», если остальные входные данные совпали. |
| Первым появляется другой нижележащий HRESULT | Сохраните его отдельно: маркер состояния «videodevice busy» может быть лишь отображением ошибки более низкого компонента. |
Контрольный запуск
Для проверки маркер состояния «videodevice busy» сравните два запуска одной операции: исходный с состоянием «Выбранное устройство видеозахвата занято» и второй после одного целевого изменения. Остальные входные данные оставьте неизменными.
- Зафиксируйте первый
NS_E_VIDEODEVICE_BUSYи объект, которому принадлежит маркер состояния «videodevice busy». - Сохраните входные данные до изменения состояния «Выбранное устройство видеозахвата занято».
- Повторите тот же API/Player workflow без широкого сброса окружения.
- Устраните только условие «Выбранное устройство видеозахвата занято» и выполните тот же вызов ещё раз.
- Сравните первый HRESULT и фактическую стадию, до которой дошла операция.
После исправления
Не подменяйте проверку маркер состояния «videodevice busy» широким reset Player. Повторяйте на том же устройстве и формате, меняя только параметр, непосредственно связанный с этим кодом. После коррекции убедитесь, что исчезло именно состояние «Выбранное устройство видеозахвата занято».
Документация
- IWMEncVideoSource2.Width and live capture sizing.
- BITMAPINFOHEADER structure.
- ICCompressQuery video-compressor format check.
- Retrieving the configured encoder input.
Нужно найти другой код? Найти другой код состояния или ошибки.