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 |
---|---|
Used to get or set a normal still or photo sequence mode for the camera. |
|
Used to get the current photo capture frame rate when the photo mode for the camera is sequence mode. |
|
Used to get or set maximum capture frame rate for a camera when it is in photo sequence mode. |
|
Used to get or set the trigger time for the camera driver. |
|
Used to get or set the warm start (camera ready) state. |
|
Used to get or set the maximum possible frame rate possible on the video capture pins at a certain resolution. |
|
Used to get or set the thumbnail capability for the camera. |
|
Used to get or set a driver defined mode which represents a collection of preset controls. |
|
Used to get or set the method a camera’s flash is used in low light conditions. |
|
Used to get or set the flash mode operation for both normal and sequence photo mode of the camera. |
|
Used to get or set whether auto processing occurs for white balance or for a manual temperature value. |
|
Used to get or set whether the camera is optimized for photo or video operation. |
|
Used to get or set whether auto processing occurs for exposure or a manual time value is used. |
|
Used to get or set the auto, manual, and preset focus modes of the camera. |
|
Used to get or set the preset or automatic ISO setting for the camera. |
|
Used to get the field of view and pitch angle of the camera position. |
|
Used to get or set the exposure control adjustment setting. |
|
Used to get the pitch and yaw angle of the camera position. |
These structures and enumerations support the extended camera control interface:
Structures
- KSPROPERTY_CAMERACONTROL_S_EX
- KSPROPERTY_CAMERACONTROL_FLASH_S
- KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY_S
- KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST_S
- KSPROPERTY_CAMERACONTROL_VIDEOSTABILIZATION_MODE_S
- KSCAMERA_EXTENDEDPROP_HEADER
- KSCAMERA_EXTENDEDPROP_VALUE
- KSCAMERA_EXTENDEDPROP_PHOTOMODE
- KSCAMERA_MAXVIDEOFPS_FORPHOTORES
- KSCAMERA_EXTENDEDPROP_VIDEOPROCSETTING
- KSCAMERA_EXTENDEDPROP_FIELDOFVIEW
Enumerations
- KS_CameraControlAsyncOperation
- KSEVENT_CAMERACONTROL
- KSPROPERTY_CAMERACONTROL_FLASH
- KSPROPERTY_CAMERACONTROL_IMAGE_PIN_CAPABILITY
- KSPROPERTY_CAMERACONTROL_REGION_OF_INTEREST
- KSPROPERTY_CAMERACONTROL_VIDEO_STABILIZATION_MODE
Example driver code that implements this interface is given in How To Implement Extended Camera Control Properties.