Что означает код HRESULT 0xC00D0BD8 (NS_E_INVALID_EDL)?

 
Предыдущий Следующий
NS_E_ATTRIBUTE_NOT_ALLOWED NS_E_DATA_UNIT_EXTENSION_TOO_LARGE

NS_E_INVALID_EDL

Что означает NS_E_INVALID_EDL на уровне ответственного API

Когда NS_E_INVALID_EDL (0xC00D0BD8) появляется, первый заблокированный переход — список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника. На практике проверку media format для invalid EDL нужно воспроизводить с теми же URL, stream, поколением объекта и последовательностью вызовов.

Windows Media Format разделяет профиль сжатого потока, необработанный входной формат и декодированный выход reader при проверке «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника». Writer затем пакетирует samples, применяет attributes и необязательные расширения data units, поэтому сбой на одной границе не доказывает нечитаемость ASF-контейнера при диагностике «недопустимый EDL». В случае NS_E_INVALID_EDL, сохраняйте самый ранний результат нижнего уровня: оболочки могут сопоставлять разные причины с одним HRESULT в этой контрольной точке.

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

  1. Запишите 0xC00D0BD8, NS_E_INVALID_EDL, точную операцию и время первого сбоя.
  2. Сохраните диапазон времени источника, номер прохода, состояние preprocessing, записи EDL в порядке источника и выбранный для потока режим вывода для состояния «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».
  3. Не используйте повторно graph, session, reader или metadata object, созданные до изменения соответствующей конфигурации или ресурса для условия «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».
  4. Выполните один изолированный тест: сократить EDL до одного допустимого диапазона источника и добавлять остальные записи по одной после успешной проверки.
  5. Повторите проверку через тот же API и protocol path; другой Player или локальная копия полезны только для сравнения и сами по себе не доказывают исправление исходной границы для условия «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».
  6. Подтвердите ожидаемое следующее состояние и сохраните новый HRESULT, если он появился, как отдельный результат последующей стадии на границе «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».

Что завершилось и что не завершилось

До этой контрольной точки предыдущая настройка могла завершиться успешно, однако этап «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника» не был завершён. Поэтому в журнале нужны и последний успешный вызов, и NS_E_INVALID_EDL.

Целевое сравнение: сократить EDL до одного допустимого диапазона источника и добавлять остальные записи по одной после успешной проверки. Оно меняет спорное предварительное условие, не меняя идентичность мультимедиа и несвязанные параметры компьютера на границе «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».

Данные профиля и образца

ЗафиксируйтеКак это помогает выделить NS_E_INVALID_EDL
Вызов-владелецЗафиксируйте метод API, идентификатор объекта, поток или callback и временную метку для контрольной точки «недопустимый EDL».
Решающие значениядиапазон времени источника, номер прохода, состояние preprocessing, записи EDL в порядке источника и выбранный для потока режим вывода
Поколение объектаОтметьте, когда были созданы reader, writer, graph, URL object, streaming session или metadata provider; устаревшее состояние может воспроизвести NS_E_INVALID_EDL после изменения конфигурации.
Первый вложенный результатСохраните самый ранний статус codec, COM, socket, DNS, parser или provider до NS_E_INVALID_EDL; более поздние сообщения интерфейса менее конкретны.
Случай для сравненияИспользуйте один заведомо рабочий ресурс, проходящий ту же контрольную точку «недопустимый EDL», изменив только отклонённое предварительное условие.

Как интерпретировать следующий HRESULT

Результат повторной проверкиТолкование для NS_E_INVALID_EDL
Тот же вызов по-прежнему возвращает этот кодЗначения, определяющие контрольную точку «недопустимый EDL», не изменились либо вызывающая сторона всё ещё использует старое поколение объекта.
Новый объект работает успешноНа результат повлияли lifetime объекта или cached state NS_E_INVALID_EDL; исправьте пересоздание объекта вместо применения обходного решения на уровне всего компьютера.
Вызов доходит до другого HRESULT в сценарии «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника»Исходная граница пройдена. Диагностируйте новый код отдельно на его собственной стадии format, graph, URL, network или metadata для состояния «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».
Сбой возникает только для одного ресурсаДанные указывают на состояние конкретного content, URL, publishing point, stream, attribute или object, а не на общий сбой системы в сценарии «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».

Действия, вводящие в заблуждение

  • не меняйте одновременно несколько параметров profile и codec: это скрывает первое несовместимое поле для состояния «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».
  • Не стирайте данные о первом появлении NS_E_INVALID_EDL многократными повторами; callbacks и reconnect могут заменить полезное исходное состояние более поздней ошибкой оболочки.
  • Не публикуйте учётные данные, материалы защищённого содержимого или полные закрытые URL при проверке «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника». Записывайте обезличенные identifiers, lengths, hashes и поля protocol, необходимые для воспроизведения этой контрольной точки на границе «список решений монтажа EDL содержит недопустимые времена, порядок или диапазоны источника».

Близкие результаты не взаимозаменяемы

Основное различие: Ошибка EDL относится к монтажным диапазонам и их порядку, а не к способности декодировать исходный файл.

Близкий HRESULTКак его сравнивать
NS_E_ATTRIBUTE_READ_ONLYСравните ответственный API и первое отклонённое значение: этот HRESULT относится к соседней контрольной точке и не обязан иметь ту же причину, что NS_E_INVALID_EDL.
NS_E_ATTRIBUTE_NOT_ALLOWEDИспользуйте состояние объекта и порядок операций, чтобы определить, какой код является исходным, если оба появляются в одной трассировке.
NS_E_DATA_UNIT_EXTENSION_TOO_LARGEСохраните этот результат отдельно, если он появляется только после устранения условия NS_E_INVALID_EDL.

Технические ссылки

Для NS_E_INVALID_EDL, сохраните трассировку после исправления, чтобы более поздний результат pipeline не был ошибочно принят за повтор этой границы при изоляции случая invalid EDL.


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