Что означает код HRESULT 0xC00D1037 (NS_E_WMP_JPG_BAD_PRECISION)?

 
Предыдущий Следующий
NS_E_WMP_JPG_BAD_VERSION_NUMBER NS_E_WMP_JPG_CCIR601_NOTIMPL

NS_E_WMP_JPG_BAD_PRECISION

Диагностика NS_E_WMP_JPG_BAD_PRECISION

0xC00D1037 соответствует NS_E_WMP_JPG_BAD_PRECISION. Практический смысл результата — кадр JPEG объявляет точность отсчётов, которую декодер изображений WMP не поддерживает в пределах декодера графических ресурсов обложки и контракта растровых файлов; результат формируется трактом загрузки изображений обложек Windows Media Player, который распознаёт данные GIF, PNG, BMP или JPEG, проверяет заголовки конкретного формата и создаёт растровое изображение, пригодное для элемента интерфейса.

Данные, позволяющие отличить этот результат

ПолеЧто записать
Решающая проверкаЗафиксируйте поле точности SOF, тип кадра и число компонентов
Идентичность артефактаполя заголовка формата, размеры, глубину цвета и цветовую модель для этого воспроизведения
Состояние среды выполненияпервый недопустимый маркер/блок данных и его смещение в байтах для этого воспроизведения
Ответственный объектподдерживаемый декодером режим кодирования и режим, объявленный файлом, для этого воспроизведения
Результат нижнего уровнярезультат отдельного декодирования вне пакета обложки с использованием тех же байтов для этого воспроизведения
Корреляцияимя члена архива, длину в байтах, хеш и сигнатуру файла для этого воспроизведения

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

Точная проверка и исправление

  1. Подтвердите причину напрямую: зафиксируйте поле точности SOF, тип кадра и число компонентов.
  2. После преобразования изображения к поддерживаемой точности отсчётов с сохранением исходного мастер-файла пересоздайте владеющий объект WMP и убедитесь, что новая операция завершается.

Близкие результаты с другими границами

РезультатДругая граница
NS_E_WMP_JPG_BAD_VERSION_NUMBERполе версии JPEG либо версии декодера/библиотеки находится вне диапазона, принимаемого реализацией
NS_E_WMP_JPG_CCIR601_NOTIMPLJPEG требует обработку дискретизации по CCIR 601, не реализованную в этом тракте декодирования
NS_E_WMP_JPG_BAD_DCTSIZEJPEG запрашивает размер блока DCT или режим масштабированного DCT, не поддерживаемый встроенным декодером

Проверка исправления

После устранения выявленного предварительного условия повторите исходную операцию с новым ответственным объектом. Считайте NS_E_WMP_JPG_BAD_PRECISION устранённым только после того, как та же операция проходит этот этап; любой последующий HRESULT сохраняйте как отдельный сбой.

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


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