Partager via


Camera Property Sets (Windows Embedded CE 6.0)

1/6/2010

A camera application can query and set pre-defined properties such as brightness, contrast, exposure, focus, flash, etc. through DirectShow. DirectShow can query and set pre-defined camera features by using properties in property sets.

You can control properties that are set automatically as well as manually. You can also implement your own custom properties to expose unique features in your camera hardware. If your camera driver implements its own custom properties then you should document these properties and provide a control panel application to expose them to the end user.

The table shows the default property sets for the camera driver.

PROPSETID_VIDCAP_CAMERACONTROL

Used to control camera devices. The controls provided are a subset of the ITU T.RDC standard. Support for this property set is optional and should be implemented only by devices that offer camera control settings.The property items in this set are specified by the CSPROPERTY_VIDCAP_CAMERACONTROL enumeration.

PROPSETID_VIDCAP_VIDEOPROCAMP

This property set adjusts image color attributes in either analog or digital domains. This property set should be implemented for devices that allow adjustment of brightness, contrast, hue, and other image quality settings. Support for this property set is optional and should be implemented only by devices that provide these controls.

The property items in this set are specified by CSPROPERTY_VIDCAP_VIDEOPROCAMP enumeration.

The PROPSETID_VIDCAP_VIDEOPROCAMP property set contains properties that are needed to implement the IAMVideoProcAmp interface.

Each property in the PROPSETID_VIDCAP_VIDEOPROCAMP property set includes a range and default value. The range for the property set is defined in real-world units to allow programmatic control of parameters. Each device can define a subset of this range, as well as a step size. This allows controls, such as sliders and scroll bars, to be programmed to give a visible effect for each step.

For example, the overall theoretical range for brightness is defined as -100 to 100 IRE units. IRE is an NTSC-defined measure of video levels, where 0 corresponds to the blanking, or full-black level, and 100 represents pure white. If a VideoProcAmp was able to shift a pure black input signal (perhaps generated by completely covering the camera lens) and cause it to appear as pure white, then its range would be 0 to 100 IRE.

Most VideoProcAmps actually provide a limited range of brightness control. One way to measure the range is to cover the camera lens and determine the output signal over the range of adjustment and then normalize this to IRE units. After the range has been calculated, the stepping value can be derived by taking the maximum and minimum values and dividing by the number of adjustment steps (max + min)/N adjustment steps.

Note that property set values are multiplied by 100 to give improved granularity.

See Also

Concepts

Camera Driver Implementation