KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM

KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM 用于控制数字缩放。 它在 KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY 枚举中定义,用于获取和设置缩放比例,并从驱动程序获取缩放范围。 在Windows 10中,此控件已扩展为支持平滑缩放。

使用情况摘要表

范围 控制 类型

版本 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

如果驱动程序不支持数字缩放,则驱动程序不应实现此控件。

下表描述了标志功能。

标志 描述

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 调用,驱动程序必须报告基于当前配置或设置允许的当前缩放范围。

下表包含使用 KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM 属性时KSCAMERA_EXTENDEDPROP_HEADER结构字段的说明和要求。

成员 说明

版本

这必须是 1,

PinId

这必须 KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF) ,

大小

这必须是 sizeof (KSCAMERA_EXTENDEDPROP_HEADER) +sizeof (KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING)

结果

这表示上次 SET 操作的错误结果。 如果未执行 SET 操作,则必须为 0。

功能

必须是上面定义的受支持标志的按位 OR。

Flags

这是一个读/写字段。 这可以是上面定义的任一受支持的标志。

下表包含 KSPROPERTY_CAMERACONTROL_EXTENDED_ZOOM 属性的KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING 结构字段的说明和要求。

成员 说明

“模式”

这是未使用的,必须为 0。

Min/Max/Step

Min/Max/Step 包含相机驱动程序支持的以 Q16 格式缩放比率的最小值/最大/增量。 驱动程序必须为 GET 操作返回这些值。

VideoProc

对于 SET 操作,VideoProc.Value.ul 必须在 Min/Max/Step 参数描述的范围内指定缩放比率。 对于 GET 操作,驱动程序必须返回当前缩放比例。

预留

这未使用。 驱动程序必须忽略这一点。

此属性控件是同步的,不可取消。

要求

标头

Ksmedia.h