Extended Camera Control Properties

The extended camera control interface, available starting in Windows 8, is used to control camera features during image capture. The driver can control these camera features:

  • the camera's flash
  • whether image pin and record pin are mutually exclusive
  • the region of interest in the image
  • video stabilization

The driver can also choose to perform a camera control operation asynchronously, meaning that all requests for an operation are rejected until the first request is completed. If the driver has successfully performed asynchronous camera control operations, it should trigger the KSEVENTSETID_CameraAsyncControl event. See KSPROPERTY_CAMERACONTROL_S_EX for more information.

UWP apps can access these properties to configure the camera:

Properties

KSPROPERTY_CAMERACONTROL_FLASH_PROPERTY
Used to turn the camera's flash on or off, or to put the flash into automatic mode.

KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_PROPERTY
Used to identify whether the camera's image pin and record pin are mutually exclusive.

KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_PROPERTY
Used to get or set the characteristic of a camera's region of interest.

KSPROPERTY_CAMERACONTROL_VIDEO_STABILIZATION_MODE_PROPERTY
Used to get or set a camera's video stabilization characteristics.

The following properties are available starting with Windows 8.1.

Term Description

KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOMODE

Used to get or set a normal still or photo sequence mode for the camera.

KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOFRAMERATE

Used to get the current photo capture frame rate when the photo mode for the camera is sequence mode.

KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOMAXFRAMERATE

Used to get or set maximum capture frame rate for a camera when it is in photo sequence mode.

KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOTRIGGERTIME

Used to get or set the trigger time for the camera driver.

KSPROPERTY_CAMERACONTROL_EXTENDED_WARMSTART

Used to get or set the warm start (camera ready) state.

KSPROPERTY_CAMERACONTROL_EXTENDED_MAXVIDFPS_PHOTORES

Used to get or set the maximum possible frame rate possible on the video capture pins at a certain resolution.

KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOTHUMBNAIL

Used to get or set the thumbnail capability for the camera.

KSPROPERTY_CAMERACONTROL_EXTENDED_SCENEMODE

Used to get or set a driver defined mode which represents a collection of preset controls.

KSPROPERTY_CAMERACONTROL_EXTENDED_TORCHMODE

Used to get or set the method a camera’s flash is used in low light conditions.

KSPROPERTY_CAMERACONTROL_EXTENDED_FLASHMODE

Used to get or set the flash mode operation for both normal and sequence photo mode of the camera.

KSPROPERTY_CAMERACONTROL_EXTENDED_OPTIMIZATIONHINT

Used to get or set whether auto processing occurs for white balance or for a manual temperature value.

KSPROPERTY_CAMERACONTROL_EXTENDED_WHITEBALANCEMODE

Used to get or set whether the camera is optimized for photo or video operation.

KSPROPERTY_CAMERACONTROL_EXTENDED_EXPOSUREMODE

Used to get or set whether auto processing occurs for exposure or a manual time value is used.

KSPROPERTY_CAMERACONTROL_EXTENDED_FOCUSMODE

Used to get or set the auto, manual, and preset focus modes of the camera.

KSPROPERTY_CAMERACONTROL_EXTENDED_ISO

Used to get or set the preset or automatic ISO setting for the camera.

KSPROPERTY_CAMERACONTROL_EXTENDED_FIELDOFVIEW

Used to get the field of view and pitch angle of the camera position.

KSPROPERTY_CAMERACONTROL_EXTENDED_EVCOMPENSATION

Used to get or set the exposure control adjustment setting.

KSPROPERTY_CAMERACONTROL_EXTENDED_CAMERAANGLEOFFSET

Used to get the pitch and yaw angle of the camera position.

These structures and enumerations support the extended camera control interface:

Structures

Enumerations

Example driver code that implements this interface is given in How To Implement Extended Camera Control Properties.