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


KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM

KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM используется для управления цифровым масштабированием. Он определяется в перечислении KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY и используется для получения и установки коэффициента масштабирования и получения диапазонов масштабирования от драйвера. В Windows 10 этот элемент управления расширен для поддержки плавного масштабирования.

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

Область Control Тип

версия 1

Фильтр

Синхронная

В KSCAMERA_EXTENDEDPROP_HEADER можно поместить следующие флаги . Поле "Флаги " для управления плавным и прямым масштабированием. Значение по умолчанию определяется драйвером.

#define KSCAMERA_EXTENDEDPROP_ZOOM_DEFAULT  0x0000000000000000
#define KSCAMERA_EXTENDEDPROP_ZOOM_DIRECT   0x0000000000000001
#define KSCAMERA_EXTENDEDPROP_ZOOM_SMOOTH   0x0000000000000002

Если драйвер поддерживает этот элемент управления, он должен поддерживать KSCAMERA_EXTENDEDPROP_ZOOM_DEFAULT.

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

В следующей таблице описаны возможности флагов.

Flag Описание

KSCAMERA_EXTENDEDPROP_ZOOM_DEFAULT

Это обязательная возможность. Если этот параметр указан, драйвер решает, следует ли применять прямое или плавное масштабирование, и масштабировать до целевого коэффициента масштабирования, указанного в VideoProc.Value.ul соответственно. Этот флаг является взаимоисключающим с флагами DIRECT и SMOOTH.

KSCAMERA_EXTENDEDPROP_ZOOM_DIRECT

Это обязательная возможность. Если этот параметр указан, драйвер максимально быстро изменит масштаб до целевого коэффициента масштабирования, указанного в VideoProc.Value.ul. Этот флаг является взаимоисключающим с флагами AUTO и SMOOTH.

KSCAMERA_EXTENDEDPROP_ZOOM_SMOOTH

Эта возможность является необязательной. Если этот параметр указан, драйвер будет постепенно увеличиваться до целевого коэффициента масштабирования, указанного в VideoProc.Value.ul. Число кадров, которое требуется для достижения указанного коэффициента масштабирования, определяется драйвером. Этот флаг является взаимоисключающим с флагами AUTO и DIRECT.

Для каждого вызова GET драйвер должен сообщать о текущих диапазонах масштабирования, разрешенных в зависимости от текущих конфигураций или настроек.

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

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

Версия

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

PinId

Это должно быть KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF).

Размер

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

Результат

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

Функция

Должен быть битовой или из поддерживаемых флагов, определенных выше.

Флаги

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

В таблице ниже приведены описания и требования к полям структуры KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING для свойства KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM .

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

Режим

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

Min/Max/Step

Минимальное/максимальное значение/шаг содержит минимальное/максимальное значение/увеличение масштаба, поддерживаемое драйвером камеры в формате Q16. Драйвер должен возвращать эти значения для операций GET .

VideoProc

Для операций SET videoProc.Value.ul должен указывать коэффициент масштабирования в пределах диапазона, описанного параметром Min/Max/Step. Для операций GET драйвер должен возвращать текущее соотношение масштаба.

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

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

Этот элемент управления свойством является синхронным и не может быть отменен.

Требования

Заголовок

Ksmedia.h