Definition

Some information relates to pre-released product which may be substantially modified before it’s commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Remarks

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.

Prerelease. 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.

Remarks

Temporal denoising can improve the visual quality of video to the human eye, but it also can reduce image consistency and details which can negatively impact the performance of registration, optical character recognition, and other computer vision tasks. This control allows you to enable and disable the feature depending on your app's current video capture scenario.

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.

The size of the buffer that should be allocated to store the result of the operation. If the driver does not require that a size be specified for the returned property, set this value to null. If the size is required, and you do not provide a value, the Status property of the returned VideoDeviceControllerGetDevicePropertyResult object will be MaxPropertyValueSizeRequired. If the value supplied is too small to store the result of the operation, the returned Status object will be MaxPropertyValueSizeTooSmall, which means that you can retry the call with a larger buffer size.

The size of the buffer that should be allocated to store the result of the operation. If the driver does not require that a size be specified for the returned property, set this value to null. If the size is required, and you do not provide a value, the Status property of the returned VideoDeviceControllerGetDevicePropertyResult object will be MaxPropertyValueSizeRequired. If the value supplied is too small to store the result of the operation, the returned Status object will be MaxPropertyValueSizeTooSmall, which means that you can retry the call with a larger buffer size.

An IAsyncAction object that is used to control the asynchronous operation.

Remarks

This method sets the properties on the media source, which is the video capture device. This is unlike MediaCapture.SetEncodingPropertiesAsync, which changes the properties of the media encoding. For this reason, with SetMediaStreamPropertiesAsync you can only set properties and values that are supported natively by the capture device. Get a list of a capture device's supported resolutions, frame rates, and other properties by calling GetAvailableMediaStreamProperties. The benefit of setting the capture device properties instead of the media encoding is that the device only needs to generate enough data for the specified resolution, which can provide better performance than capturing at a high resolution and then downscaling at another point in the media capture pipeline. For more information, see Set format, resolution, and frame rate for MediaCapture and the Camera Resolution Sample.