PROPSETID_VIDCAP_VIDEOPROCAMP

PROPSETID_VIDCAP_VIDEOPROCAMP属性集控制可以调整模拟或数字信号的图像颜色属性的设备。

ksmedia.h 中的KSPROPERTY_VIDCAP_VIDEOPROCAMP枚举指定此集的属性。

对此属性集的支持是可选的,应仅由允许调整亮度、对比度、色调和其他图像质量设置的设备实现。

在 USB 视频类之前,此枚举包含以下属性项:

KSPROPERTY_VIDEOPROCAMP_BACKLIGHT_COMPENSATION

KSPROPERTY_VIDEOPROCAMP_BRIGHTNESS

KSPROPERTY_VIDEOPROCAMP_COLORENABLE

KSPROPERTY_VIDEOPROCAMP_CONTRAST

KSPROPERTY_VIDEOPROCAMP_GAMMA

KSPROPERTY_VIDEOPROCAMP_HUE

KSPROPERTY_VIDEOPROCAMP_SATURATION

KSPROPERTY_VIDEOPROCAMP_SHARPNESS

KSPROPERTY_VIDEOPROCAMP_WHITEBALANCE

KSPROPERTY_VIDEOPROCAMP_GAIN

随着 USB 视频类驱动程序的引入,以下属性已添加到KSPROPERTY_VIDCAP_VIDEOPROCAMP枚举中:

KSPROPERTY_VIDEOPROCAMP_DIGITAL_MULTIPLIER

KSPROPERTY_VIDEOPROCAMP_DIGITAL_MULTIPLIER_LIMIT

KSPROPERTY_VIDEOPROCAMP_WHITEBALANCE_COMPONENT

KSPROPERTY_VIDEOPROCAMP_POWERLINE_FREQUENCY

PROPSETID_VIDEOPROCAMP属性集中的每个属性都包含一个范围和默认值。 属性集的范围在实际单位中定义,以允许以编程方式控制参数。 每个设备都可以定义此范围的子集以及步骤大小。 这允许对控件(如滑块和滚动条)进行编程,以便为每个步骤提供可见效果。

例如,亮度的总体理论范围定义为 -100 到 100 个 IRE 单位。 IRE 是视频级别的 NTSC 定义度量值,其中 0 对应于空白或全黑级别,100 表示纯白色。 如果 VideoProcAmp 能够转移纯黑色输入信号(也许由完全覆盖相机镜头生成),并使其显示为纯白色,则其范围将为 0 到 100 IRE。

大多数 VideoProcAmps 实际上提供有限的亮度控制范围。 测量范围的一种方法是覆盖相机镜头并确定调整范围内的输出信号,然后将信号规范化为 IRE 单位。 计算范围后,可以采用最大值和最小值来派生单步进值,并除以调整步骤数 (max + min)/N 调整步骤

请注意,属性集中使用的值乘以 100,以提高粒度。

DirectShow 接口

DirectShow IAMVideoProcAmp 接口(请参阅 Microsoft Windows SDK 中的 DirectShow 文档)提供对此集的属性的访问权限。