Поделиться через


KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED

KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED — это расширенный элемент управления свойствами, который обеспечивает более глобальный контроль ISO с большей степенью детализации.

Сводная таблица использования

Область Control Тип

версия 1

Закрепление (фото)

Асинхронный

Новый флаг KSCAMERA_EXTENDEDPROP_ISO_MANUAL определен в ksmedia_phone.h следующим образом.

#define KSCAMERA_EXTENDEDPROP_ISO_MANUAL          0x0080000000000000

В следующей таблице приведены описания и требования к полям структуры KSCAMERA_EXTENDEDPROP_HEADER для элемента управления KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED.

Windows 8.1 KS_CAMERACONTROL_EXTENDED_ISO остается неизменным без поддержки целочисленного ручного ISO. Драйвер должен поддерживать только новый элемент управления KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED. Если оба этих элемента управления поддерживаются, конвейер по умолчанию будет использовать элемент управления KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED.

Если элемент управления KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED поддерживается, драйвер может объявлять только следующие возможности.

  • KSCAMERA_EXTENDEDPROP_ISO_AUTO

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL

  • KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL

Если драйвер объявляет флаг возможности KSCAMERA_EXTENDEDPROP_ISO_MANUAL, он также должен объявлять поддерживаемые диапазоны ISO в значении Min/Max/Step свойства KSCAMERA_EXTENDED_PROP_VIDEOPROCSETTING. Если драйвер объявляет минимальное значение 0 и максимальное значение 0 или значение Шага меньше 1, элемент управления помечается как непригодный для использования и отклоняется конвейером.

Если драйвер поддерживает как KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED, так и KSPROPERTY_CAMERACONTROL_EXTENDED_ISO, драйвер должен объявлять KSCAMERA_EXTENDEDPROP_ISO_AUTO как для KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED, так и для KSPROPERTY_CAMERACONTROL_EXTENDED_ISO. В противном случае оба элемента управления ISO будут помечены как непригодные для использования и отклонены конвейером MF.

Если драйвер объявляет KSCAMERA_EXTENDEDPROP_ISO_MANUAL в KSPROPERTY_CAMERACONTROL_EXTENDED_ISO_ADVANCED и числовые значения KSCAMERA_EXTENDEDPROP_ISO_XXX в KSPROPERTY_CAMERACONTROL_EXTENDED_ISO, числовые значения KSCAMERA_EXTENDEDPROP_ISO_XXX, объявленные в KSPROPERTY_CAMERACONTROL_EXTENDED_ISO, должны находиться в поддерживаемых ручных диапазонах ISO, объявленных KSCAMERA_EXTENDEDPROP_ISO_MANUAL. Кроме того, все числовые значения KSCAMERA_EXTENDEDPROP_ISO_XXX в поддерживаемых диапазонах вручную должны объявляться KSPROPERTY_CAMERACONTROL_EXTENDED_ISO. В противном случае оба элемента управления ISO могут быть помечены как непригодные для использования и отклонены конвейером MF.

Например, возможности любого из следующих типов могут рассматриваться как катастрофический сбой, а управление может быть отклонено конвейером MF.

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, step = 20), KSCAMERA_EXTENDEDPROP_ISO_50

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (мин= 40, максимум = 240, шаг = 20), KSCAMERA_EXTENDEDPROP_ISO_80

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, step = 20), KSCAMERA_EXTENDEDPROP_ISO_400

Конвейер MF принимает возможности любого из следующих компонентов.

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (min= 40, max = 240, step = 20), KSCAMERA_EXTENDEDPROP_ISO_80, KSCAMERA_EXTENDEDPROP_ISO_100, KSCAMERA_EXTENDEDPROP_ISO_200

  • KSCAMERA_EXTENDEDPROP_ISO_MANUAL (мин= 40, максимум = 240, шаг = 20)

  • KSCAMERA_EXTENDEDPROP_ISO_80, KSCAMERA_EXTENDEDPROP_ISO_200

Член Описание

Версия

Значение должно быть 1,

PinId

Это должен быть идентификатор пин-кода, связанный с закреплением фотографии.

Размер

Это должно быть значение sizeof(KSCAMERA_EXTENDEDPROP_HEADER)+sizeof(KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING),

Результат

Содержит результаты последней операции SET. Если операция SET не выполнена, это значение должно быть равным 0.

Функция

Это должно быть немного мудрое ИЛИ KSCAMERA_EXTENDEDPROP_ISO_AUTO и/или KSCAMERA_EXTENDEDPROP_ISO_MANUAL, а также флаг KSCAMERA_EXTENDEDPROP_CAPS_ASYNCCONTROL. Этот элемент управления должен быть асинхронным.

Флаги

Это поле для чтения и записи. Это может быть любой из флагов KSCAMERA_EXTENDEDPROP_ISO_XXX, определенных выше.

В следующей таблице приведены описания и требования к полям структуры KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING для ISO DDI. Эта структура определена в ksmedia.h.

Член Описание

Режим

Этот параметр не используется и должен иметь значение 0.

Min/Max/Step

Min/Max/Step содержит минимальное, максимальное значение или приращение скорости ISO вручную, поддерживаемой драйвером камеры. Драйвер должен возвращать их для операций GET, если поддерживается ручной ISO.

VideoProc

Если в поле Флаги KSCAMERA_EXTENDEDPROP_HEADER указано MANUAL, в videoProc.Value.ul необходимо указать текущее значение скорости ISO в диапазоне, описанном параметром Min/Max/Step.

Если указаны флаги, отличные от manual, для операций SET поле VideoProc игнорируется. Для операций GET драйвер должен всегда возвращать текущую скорость ISO, независимо от того.

Зарезервировано

Это не используется. Это должно игнорироваться драйвером.

Вызов GET

Драйвер должен объявить свою возможность в KSCAMERA_EXTENDEDPROP_HEADER. Возможность и текущий флаг ISO в драйвере в KSCAMERA_EXTENDEDPROP_HEADER. Flags. Если до вызова Get не было выполнено ни один вызов SET, драйвер должен вернуть значение по умолчанию в KSCAMERA_EXTENDEDPROP_HEADER. Флаги.

Если флаг KSCAMERA_EXTENDEDPROP_ISO_MANUAL объявлен в поле Возможности, драйвер должен дополнительно объявить поддерживаемые диапазоны в KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. Min/Max/Step.

Драйвер также должен сообщить о текущей скорости ISO, используемой в KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul. Если до вызова GET не было выполнено ни один вызов SET, драйвер должен вернуть текущую скорость ISO в KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul.

Вызов SET

The KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul содержит нужную целочисленную скорость ISO вручную, если KSCAMERA_EXTENDEDPROP_ISO_MANUAL указана в KSCAMERA_EXTENDEDPROP_HEADER. Флаги.

Если флаг KSCAMERA_EXTENDEDPROP_ISO_AUTO указан в KSCAMERA_EXTENDEDPROP_HEADER. Флаги, KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING. VideoProc.Value.ul будет игнорироваться.

Требования

Заголовок

Ksmedia.h