Site icon EfmSoft

Что означает код HRESULT 0xC00D1BE1 (NS_E_DEVICECONTROL_UNSTABLE)?

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

NS_E_DEVICECONTROL_UNSTABLE

Граница сбоя в объектной модели Encoder

Практический смысл NS_E_DEVICECONTROL_UNSTABLE (0xC00D1BE1) состоит не только в стандартном сообщении, приведённом выше. Код локализует условие подключаемый модуль управления сообщает, что ленточное устройство больше не находится в надёжном состоянии для выполнения команд в подсистеме управления ленточным устройством и списками монтажных решений.

Управление устройством Windows Media Encoder согласует источник захвата с подключаемым модулем управления, транспортом ленты, отметками входа и выхода и списком монтажных решений в сеансе, возвращающем NS_E_DEVICECONTROL_UNSTABLE. На контрольной точке нестабильного управления устройство захвата и устройство управления должны относиться к одному пригодному аппаратному пути.

Данные, отличающие этот код от ошибки оболочки

Захват видео может оставаться доступным, когда отдельный подключаемый модуль теряет управление транспортом, поэтому ошибка управления устройством в сеансе, возвращающем NS_E_DEVICECONTROL_UNSTABLE, не обязательно означает сбой формата захвата. Например, после неудачного позиционирования быстро повторяются команды, пока дека не перестаёт отвечать предсказуемо. Сохраните различие, задаваемое NS_E_DEVICECONTROL_UNSTABLE до того, как уровень интерфейса преобразует результат в общую ошибку запуска, захвата или профиля.

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

Интерпретация следующего измерения

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

Практическое влияние NS_E_DEVICECONTROL_UNSTABLE ограничено переходом управления ленточным устройством и списками монтажных решений, которому принадлежит это условие. Для NS_E_DEVICECONTROL_UNSTABLE, этот код сам по себе не доказывает, что повреждены все входные данные, отсутствуют все кодеки или полностью неработоспособна установка Windows Media. Если после неудачного позиционирования быстро повторяются команды и дека перестаёт отвечать предсказуемо, сохраните первый сбойный вызов и идентификатор его объекта, чтобы последующая оболочка не заменила исходные данные.

Проверка условия без перестройки сеанса

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

Внимательно интерпретируйте соседние результаты

РезультатПочему это другая граница
NS_E_INVALID_SOURCE_WITH_DEVICE_CONTROLуправление устройством подключено к источнику, который не является устройством захвата
NS_E_EDL_REQUIRED_FOR_DEVICE_MULTIPASSдля двухпроходного кодирования с устройством отсутствует обязательный непустой список монтажных решений
NS_E_END_OF_TAPEтранспорт достигает конца записанного участка либо пригодная лента отсутствует

Исправление и проверка

Непосредственное исправление этого случая — прекратить отправку команд, повторно инициализировать устройство и перед продолжением проверить транспорт ленты. Пересоздайте затронутую исходную группу, профиль или выходной объект, повторите ту же операцию и убедитесь, что первый сбойный HRESULT больше не поступает с контрольной точки нестабильного управления.

Не перематывайте, не извлекайте и не перезаписывайте ленту до сохранения сбойной записи EDL и текущего временного кода: это изменит данные, используемые для воспроизведения условия позиционирования или конца ленты в сеансе, возвращающем NS_E_DEVICECONTROL_UNSTABLE.

Ссылки для границы NS_E_DEVICECONTROL_UNSTABLE


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

Exit mobile version