| Предыдущий | Следующий |
| NS_E_NO_SMPTE_WITH_MULTIPLE_SOURCEGROUPS | NS_E_INTERLACEMODE_MISMATCH |
NS_E_BAD_CONTENTEDL
Граница сбоя в объектной модели Encoder
Полезная интерпретация NS_E_BAD_CONTENTEDL (0xC00D1BAA) не ограничивается стандартным сообщением выше. Код указывает на загрузку или разбор EDL оптимизации содержимого для голосового кодека внутри ограничений предварительной обработки, анализа и многопроходного кодирования.
Обратный телесин, сжатие времени, предварительная обработка изображения, анализ содержимого и двухпроходное кодирование требуют доступа к определённым типам источников и часто нуждаются в повторном чтении либо временном хранении источника в сеансе, возвращающем NS_E_BAD_CONTENTEDL. Для живых, циклических источников и устройств на этой контрольной точке действуют дополнительные ограничения.
Сведения, отделяющие этот код от ошибки оболочки
Исходные аудио- или видеоданные могут быть исправны, хотя требуемый процесс предварительной обработки невозможен при данном жизненном цикле источника в сеансе, возвращающем NS_E_BAD_CONTENTEDL. Например, текстовый редактор изменил формат EDL или обрезал файл. Сохраните различие NS_E_BAD_CONTENTEDL до того, как уровень интерфейса преобразует результат в общую ошибку запуска, захвата или профиля.
| Поле | Что сохранить |
|---|---|
| Решающие значения | Путь EDL, хэш файла, поле версии, порядок записей и HRESULT чтения или разбора |
| Формирующий объект | Тип источника, признак живого источника или файла, флаг Repeat, число проходов, настройку временного хранилища, фильтры предварительной обработки, число кадров анализатора, частоту кадров входа, путь EDL содержимого и выбранный режим кодека |
| Корреляция сеанса | То же поколение группы источников, индекс аудитории, идентичность объекта и последовательность обратных вызовов, которые сформировали NS_E_BAD_CONTENTEDL |
| Низкоуровневые сведения | Первый HRESULT COM, драйвера, файловой системы или кодека, наблюдавшийся до того, как компонент Encoder сопоставил условие с NS_E_BAD_CONTENTEDL |
| Контролируемое сравнение | Заведомо исправный сеанс, где изменена только настройка, указанная этой диагностической границей |
Как интерпретировать следующее измерение
| Наблюдение | Как его интерпретировать |
|---|---|
| Наблюдение подтверждает этот результат | Решающими сведениями являются путь EDL, хэш файла, поле версии, порядок записей и HRESULT чтения или разбора. Они подтверждают загрузку или разбор EDL оптимизации содержимого для голосового кодека в том же поколении объекта. |
| Наблюдение указывает на более ранний сбой | Записанные значения удовлетворяют условию проверки EDL, но источник, драйвер, активация COM или файловая операция раньше возвращает другой HRESULT. |
| Наблюдение указывает на более поздний сбой | Encoder проходит эту границу — загрузку или разбор EDL оптимизации содержимого для голосового кодека, — но затем на следующем этапе отказывает кодек, архивный или вещательный приёмник. |
| Проверка после исправления | Внесите одно изолированное изменение: восстановите допустимый EDL, созданный для выбранного рабочего процесса голосового кодека. Исходный вызов должен пройти ту же контрольную точку. |
Практическое влияние NS_E_BAD_CONTENTEDL ограничено переходом ограничений предварительной обработки, анализа и многопроходного кодирования, которому принадлежит загрузка или разбор EDL. Сам по себе NS_E_BAD_CONTENTEDL не доказывает повреждение всех входных данных, отсутствие всех кодеков или непригодность всей установки Windows Media. Если текстовый редактор изменил формат EDL или обрезал файл, сохраните первый отказавший вызов и идентичность его объекта, чтобы более поздняя оболочка не заменила эти сведения.
Проверка условия без перестройки всего сеанса
- Запишите
0xC00D1BAA,NS_E_BAD_CONTENTEDL, версию Encoder и точный вызов API или обращение к свойству, вернувшее код. - Экспортируйте текущую конфигурацию
.wmeили.prx, затем сохраните путь EDL, хэш файла, поле версии, порядок записей и HRESULT чтения или разбора. - Для
NS_E_BAD_CONTENTEDLпроверьте предусловие предварительной обработки, анализа и многопроходного кодирования, не изменяя одновременно источник, профиль и выходной приёмник. - Выполните одно контролируемое сравнение, изменив только это условие: восстановите допустимый EDL, созданный для выбранного рабочего процесса голосового кодека.
- После изменения пересоздайте затронутый объект Encoder, а не предполагайте, что существующий граф отбросил прежнее состояние ошибки EDL.
Осторожно интерпретируйте соседние результаты
| Результат | Почему это другая граница |
|---|---|
NS_E_NO_FRAMES_SUBMITTED_TO_ANALYZER | Анализатор содержимого завершается или опрашивается, не получив ни одного видеокадра |
NS_E_NO_AUDIO_TIMECOMPRESSION | Сжатие времени включено для сеанса без аудиопотока |
NS_E_NO_PAL_INVERSE_TELECINE | Обратный телесин выбран для содержимого с частотой PAL, где эта функция неприменима |
Устранение и проверка
Прямое исправление для этого случая — восстановить допустимый EDL, созданный для выбранного рабочего процесса голосового кодека. Пересоздайте затронутую группу источников, профиль или выходной объект, повторите ту же операцию и убедитесь, что первый отказавший HRESULT больше не возникает на контрольной точке EDL.
Во время диагностики не включайте сразу несколько функций предварительной обработки; сначала проверьте обычный однопроходный источник, затем добавляйте по одному преобразованию вместе с требуемым этапом хранения или анализа в сеансе, возвращающем NS_E_BAD_CONTENTEDL.
Материалы по NS_E_BAD_CONTENTEDL — диагностической границе
- Двухпроходное кодирование.
- IWMEncContentAnalyzer.Property.
- Списки решений монтажа для голосовых кодеков.
- IWMEncSource.Repeat.
Нужно найти другой код? Найти другой код состояния или ошибки.