| Предыдущий | Следующий |
| NS_E_VIDEO_CODEC_ERROR | NS_E_INCOMPATIBLE_VERSION |
NS_E_INVALIDPROFILE
Исследование NS_E_INVALIDPROFILE без потери первого сбоя
Этот результат (0xC00D0BC6) отмечает ситуацию, когда внутренне несогласованный профиль потока либо профиль, который reader или writer не может принять. Код относится к проверке media format «invalidprofile», поэтому более позднюю ошибку network, codec или metadata нужно записывать отдельно, а не заменять ею он.
Windows Media Format разделяет профиль сжатого потока, необработанный входной формат и декодированный выход reader при проверке «внутренне несогласованный профиль потока либо профиль, который reader или writer не может принять». Writer затем пакетирует samples, применяет attributes и необязательные расширения data units, поэтому сбой на одной границе не доказывает нечитаемость ASF-контейнера при диагностике «недопустимый профиль». В случае этот результат, сохраняйте самый ранний результат нижнего уровня: оболочки могут сопоставлять разные причины с одним HRESULT в этой контрольной точке.
Где возникает сбой
К этому моменту компонент уже принял предыдущие предварительные условия, но не может пройти границу: внутренне несогласованный профиль потока либо профиль, который reader или writer не может принять. Успешное открытие файла, разрешение имени узла или создание COM-объекта не доказывает допустимость этой последующей операции.
Наиболее показательная проверка — проверить профиль отдельно, затем повторить настройку с минимальным заведомо допустимым профилем, изменив только отклонённое поле. Если после изменения только этого условия тот же вызов проходит дальше, данные подтверждают рассматриваемую границу. Если нет, вернитесь к первому вложенному результату, не расширяя исправление. Этот результат. Если этого не произошло, вернитесь к первой вложенной ошибке, а не расширяйте область исправлений в диагностической записи invalidprofile.
Как интерпретировать следующий HRESULT
| Результат повторной проверки | Толкование для него |
|---|---|
| Тот же вызов по-прежнему возвращает этот код | Значения, управляющие проверкой media format invalidprofile, не изменились либо caller всё ещё использует старое поколение объекта. |
| Новый объект работает успешно | На результат повлияли lifetime объекта или cached state этот результат; исправьте пересоздание объекта вместо обходного решения на уровне всего компьютера. |
| Вызов доходит до другого HRESULT | Граница проверки media format invalidprofile пройдена. При контролируемой повторной проверке диагностируйте новый код на его собственной стадии format, graph, URL, network или metadata. |
| Сбой возникает только для одного ресурса | Данные указывают на состояние конкретного content, URL, publishing point, stream, attribute или object, а не на общий outage при проверке «внутренне несогласованный профиль потока либо профиль, который reader или writer не может принять». |
Данные профиля и образца
| Зафиксируйте | Как это помогает выделить он |
|---|---|
| Вызов-владелец | Зафиксируйте метод API, идентификатор объекта, thread или callback и временную метку этой контрольной точки. |
| Решающие значения | XML профиля или конфигурация потока, major type, subtype, format block, bitrate, число каналов, частота дискретизации, размеры кадра и результат перечисления кодеков |
| Поколение объекта | Отметьте время создания reader, writer, graph, URL object, streaming session или metadata provider; устаревшее состояние может повторно вызвать он после изменения конфигурации. |
| Первый вложенный результат | Сохраните самый ранний status codec, COM, socket, DNS, parser или provider до него; более поздние сообщения UI менее конкретны. |
| Случай для сравнения | Используйте один заведомо рабочий ресурс, проходящий ту же контрольную точку, и изменяйте только отклонённое предварительное условие. |
Контролируемая проверка формата мультимедиа
- Запишите
0xC00D0BC6, он, точную операцию и время первого сбоя. - Сохраните XML profile или конфигурацию stream, major type, subtype, format block, bitrate, channels, sample rate, размеры кадра и результат перечисления codec как данные по invalidprofile.
- Не используйте повторно graph, session, reader или metadata object, созданные до изменения соответствующей конфигурации или ресурса для состояния «внутренне несогласованный профиль потока либо профиль, который reader или writer не может принять».
- Выполните один изолированный тест: загрузите заведомо исправный profile для того же codec, затем возвращайте спорное поле profile по одному параметру за раз в диагностической записи invalidprofile.
- Повторите проверку через тот же API и protocol path; другой Player или локальная копия полезны только как сравнение и не доказывают исправление исходной границы.
- Подтвердите ожидаемое следующее состояние и сохраните новый HRESULT как отдельный downstream result для состояния «внутренне несогласованный профиль потока либо профиль, который reader или writer не может принять».
Близкие результаты не взаимозаменяемы
Основное различие: Он относится к обработке format, profile или sample, а не только к разрешению имени файла или network при трассировке invalidprofile.
| Близкий HRESULT | Как его сравнивать |
|---|---|
NS_E_VIDEO_CODEC_NOT_INSTALLED | Сравните ответственный API и первое отклонённое значение: соседний HRESULT относится к другой контрольной точке и не обязан иметь ту же причину, что он. |
NS_E_VIDEO_CODEC_ERROR | Используйте состояние объекта и порядок операций, чтобы определить исходный код, если оба появляются в одной трассировке. |
NS_E_INCOMPATIBLE_VERSION | Сохраните он отдельно, если он появляется только после устранения условия он. |
Действия, вводящие в заблуждение
- не меняйте одновременно несколько параметров profile и codec: это скрывает первое несовместимое поле при проверке «внутренне несогласованный профиль потока либо профиль, который reader или writer не может принять».
- Не стирайте данные о первом появлении он многократными повторами; callbacks и reconnect могут заменить полезное исходное состояние более поздней ошибкой оболочки.
- Не публикуйте credentials, материалы protected content или полные private URL при проверке «внутренне несогласованный профиль потока либо профиль, который reader или writer не может принять». Записывайте только обезличенные identifiers, lengths, hashes и необходимые protocol fields.
Технические ссылки
- Обзор Windows Media Format SDK
- Входные, потоковые и выходные форматы
- Профили
- Объекты Windows Media SDK
- Реестр HRESULT Microsoft
Завершайте диагностику только после того, как исходная операция он успешно выполняется на актуальном объекте и наблюдается ожидаемое следующее состояние.
Нужно найти другой код? Найти другой код состояния или ошибки.
