VideoDeviceController Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Controls device settings on the camera.
public ref class VideoDeviceController sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
class VideoDeviceController final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.MTA)]
public sealed class VideoDeviceController
Public NotInheritable Class VideoDeviceController
- Inheritance
- Attributes
- Implements
Windows requirements
Device family |
Windows 10 (introduced in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v1.0)
|
Remarks
To get an instance of this object, retrieve the MediaCapture.VideoDeviceController property.
Some drivers may require that the camera device preview to be in a running state before it can determine which controls are supported by the VideoDeviceController. If you check whether a certain control is supported by the VideoDeviceController before the preview stream is running, the control may be described as unsupported even though it is supported by the video device.
Note
This class is not agile, which means that you need to consider its threading model and marshaling behavior. For more info, see Threading and Marshaling (C++/CX) and Using Windows Runtime objects in a multithreaded environment (.NET).
Version history
Windows version | SDK version | Value added |
---|---|---|
1703 | 15063 | GetDevicePropertyByExtendedId |
1703 | 15063 | GetDevicePropertyById |
1703 | 15063 | Id |
1703 | 15063 | SetDevicePropertyByExtendedId |
1703 | 15063 | SetDevicePropertyById |
1803 | 17134 | VideoTemporalDenoisingControl |
1903 | 18362 | InfraredTorchControl |
2004 | 19041 | PanelBasedOptimizationControl |
Properties
AdvancedPhotoControl |
Gets the advanced photo capture control for this video device. |
BacklightCompensation |
Gets a MediaDeviceControl object that can be used to get or set the whether back-light compensation is enabled on the camera. |
Brightness |
Gets a MediaDeviceControl object that can be used to get or set the brightness level on the camera. |
CameraOcclusionInfo |
Gets a CameraOcclusionInfo object that can be used to get the current occlusion state of a camera and receive notifications when the occlusion state changes. |
Contrast |
Gets a MediaDeviceControl object that can be used to get or set the contrast level on the camera. |
DesiredOptimization |
Gets or sets a value that indicates the optimizations the capture device should use to prioritize high quality picture, low latency, or low power consumption during video capture. |
DigitalWindowControl |
Gets a DigitalWindowControl that allows apps to capture a subregion of the capture device's sensor. |
Exposure |
Gets a MediaDeviceControl object that can be used to get or set the camera's exposure time. |
ExposureCompensationControl |
Gets the exposure compensation control for this video device. |
ExposureControl |
Gets the exposure control for this video device. |
ExposurePriorityVideoControl |
Gets the ExposurePriorityVideoControl associated with the VideoDeviceController. |
FlashControl |
Gets the flash control for this video device. |
Focus |
Gets a MediaDeviceControl object that can be used to get or set the camera's focus setting. |
FocusControl |
Gets the focus control for this video device. |
HdrVideoControl |
Gets the HdrVideoControl associated with the VideoDeviceController. This allows you to enable and disable High Dynamic Range (HDR) video capture mode on devices that support it. |
Hue |
Gets a MediaDeviceControl object that can be used to get or set the camera's hue setting. |
Id |
Gets a string containing the identifier for the video device controller. |
InfraredTorchControl |
Gets the infrared torch control for selected video device. |
IsoSpeedControl |
Gets the ISO film speed control for this video device. |
LowLagPhoto |
Gets the low shutter lag photo control for this video device. |
LowLagPhotoSequence |
Gets the low shutter lag photo sequence control for this video device. |
OpticalImageStabilizationControl |
Gets the OpticalImageStabilizationControl associated with the VideoDeviceController. |
Pan |
Gets a MediaDeviceControl object that can be used to get or set the camera's pan setting. |
PanelBasedOptimizationControl |
Gets the PanelBasedOptimizationControl that, when supported, allows an app to enable the capture device driver to optimize camera capture functionality based on the panel location of the camera. |
PhotoConfirmationControl |
Gets the photo confirmation control for this video device. |
PrimaryUse |
Gets or sets the primary use for the device. |
RegionsOfInterestControl |
Gets the regions of interest control for this video device. |
Roll |
Gets a MediaDeviceControl object that can be used to get or set the camera's roll setting. |
SceneModeControl |
Gets the scene mode control for this video device. |
Tilt |
Gets a MediaDeviceControl object that can be used to get or set the camera's tilt setting. |
TorchControl |
Gets the torch control for this video device. |
VariablePhotoSequenceController |
Gets the VariablePhotoSequenceController associated with the VideoDeviceController. |
VideoTemporalDenoisingControl |
Gets the VideoTemporalDenoisingControl associated with the VideoDeviceController. This allows you to enable and disable temporal denoising, which uses image data from adjacent frames to reduce the appearance of noise in captured video, on devices that support it. |
WhiteBalance |
Gets a MediaDeviceControl object that can be used to get or set the white balance on the camera. |
WhiteBalanceControl |
Gets the white balance control for this video device. |
Zoom |
Gets a MediaDeviceControl object that can be used to get or set the camera's zoom setting. |
ZoomControl |
Gets the ZoomControl associated with the VideoDeviceController. |
Methods
GetAvailableMediaStreamProperties(MediaStreamType) |
Gets a list of the supported encoding properties for the video device. |
GetDeviceProperty(String) |
Gets the value of the property with the specified ID from the capture device driver. You can use this method to query properties that are specific to a particular camera. |
GetDevicePropertyByExtendedId(Byte[], IReference<UInt32>) |
Gets the value of the property with the specified ID from the capture device driver, using an extended ID with custom header information and specifying the maximum buffer size required to store the result. You can use this method to query properties that are specific to a particular camera. |
GetDevicePropertyById(String, IReference<UInt32>) |
Gets a the value of the property from the capture device driver with the ID with custom header information. You can use this method to query properties that are specific to a particular camera. |
GetMediaStreamProperties(MediaStreamType) |
Gets the encoding properties for the specified media stream type for the video device. |
SetDeviceProperty(String, Object) |
Sets the value of the property with the specified ID on the capture device driver. You can use this method to set properties that are specific to a particular camera. |
SetDevicePropertyByExtendedId(Byte[], Byte[]) |
Sets the value of the property with the specified ID from the capture device driver, using an extended ID with custom header information and providing the value as a byte array. |
SetDevicePropertyById(String, Object) |
Sets the value of the property with the specified ID from the capture device driver, using an extended ID with custom header information and providing the value as an object. |
SetMediaStreamPropertiesAsync(MediaStreamType, IMediaEncodingProperties) |
Sets the encoding properties asynchronously for the specified media stream type for the video device. |
TryAcquireExclusiveControl(String, MediaCaptureDeviceExclusiveControlReleaseMode) |
Requests exclusive control of the camera with the specified device ID. |
TryGetPowerlineFrequency(PowerlineFrequency) |
Gets the local power line frequency. |
TrySetPowerlineFrequency(PowerlineFrequency) |
Sets the local power line frequency. |