KSPROPERTY_CAMERACONTROL_EXTENDED_HISTOGRAM

KSPROPERTY_CAMERACONTROL_EXTENDED_HISTOGRAM is a property ID that will be used to control the histogram metadata produced by the driver. This is a pin level control for the preview pin only.

Usage summary table

Scope Control Type

Version 1

Pin

Synchronous

The following flags can be placed in the KSCAMERA_EXTENDEDPROP_HEADER.Flags field to control the histogram metadata in driver. The default is HISTOGRAM_OFF.

#define KSCAMERA_EXTENDEDPROP_HISTOGRAM_OFF      0x0000000000000000
#define KSCAMERA_EXTENDEDPROP_HISTOGRAM_ON       0x0000000000000001

This control must be used before the KSPROPERTY_CAMERACONTROL_EXTENDED_METADATA control to ensure the proper sized metadata buffer is allocated.

If set to HISTOGRAM_OFF, the driver shall not deliver the histogram metadata on the preview pin. The driver should not include the histogram metadata size in its metadata buffer size requirement.

If set to HISTOGRAM_ON, the driver shall deliver the histogram metadata on the preview pin. The driver must include the histogram metadata size in its metadata buffer size requirement.

If the driver does not have the capability to produce histogram metadata, the driver should not implement this control. If the driver supports this control, it must also support KSPROPERTY_CAMERACONTROL_EXTENDED_METADATA control.

The SET call of this control has no effect when the preview pin is in any state higher than the KSSTATE_STOP state. The driver shall reject the SET call received if preview is not in the stop state and returns STATUS_INVALID_DEVICE_STATE. In a GET call, driver should return the current settings in Flags field.

The following table contains the descriptions and requirements for the KSCAMERA_EXTENDEDPROP_HEADER structure fields when using the control.

Member Description

Version

This must be 1.

PinId

Must be the Pin ID associated with the preview pin.

Size

This must be sizeof(KSCAMERA_EXTENDEDPROP_HEADER) + sizeof(KSCAMERA_EXTENDEDPROP_VALUE).

Result

Indicates the error results of the last SET operation. If no SET operation has taken place, this must be 0.

Capability

Must be 0.

Flags

This is a read/write field. This can be any one of the KSCAMERA_EXTENDEDPROP_HISTOGRAM_* flags defined above.

Requirements

Header

Ksmedia.h