MediaCaptureVideoProfile MediaCaptureVideoProfile MediaCaptureVideoProfile MediaCaptureVideoProfile Class

Definition

Represents a video profile that indicates a configuration supported by the video capture device.

public : sealed class MediaCaptureVideoProfile : IMediaCaptureVideoProfilepublic sealed class MediaCaptureVideoProfile : IMediaCaptureVideoProfilePublic NotInheritable Class MediaCaptureVideoProfile Implements IMediaCaptureVideoProfile// You can use this class in JavaScript.
Attributes
Windows 10 requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

Remarks

Video profiles provide a simple way to configure the video capture device with a group of settings that are guaranteed to work with a particular capture device and are optimized for your desired capture scenario. There is a set of known video profiles that the system provides for common scenarios, such as capturing high-quality photos or video, capturing a photo sequence, or video conferencing. To get a list of the known video profiles for a given video device, use MediaCapture::FindKnownVideoProfiles. Some hardware vendors may expose other video profiles that you can get by calling MediaCapture::FindAllVideoProfiles.

A video profile exposes three lists of MediaCaptureVideoProfileMediaDescription objects, SupportedPhotoMediaDescription, SupportedPreviewMediaDescription, and SupportedRecordMediaDescription. Each item in these lists is a group of settings that are supported for the corresponding operation. For example, a single video profile may support recording 720p video at 30 fps with HDR video support and also support recording 1080p video at 30 fps without HDR video support. In this case, each of these would be represented by a MediaCaptureVideoProfileMediaDescription object in the SupportedRecordMediaDescription list of the video profile.

You configure the capture device to use a particular video profile by using the MediaCaptureInitializationSettings object. It is important that the video profile you use when configuring the device is compatible with the other initialization settings. For more information on how to correctly use media profile descriptions in the MediaCaptureInitializationSettings, see MediaCaptureInitializationSettings::VideoProfile.

Before using video profiles, you should check the value returned by MediaCapture::IsVideoProfileSupported to make sure that video profiles are supported by the capture device.

For how-to guidance for working with video profiles, see Discover and select camera capabilities with camera profiles.

Properties

Id Id Id Id

Gets the unique identifier of the video profile.

public : PlatForm::String Id { get; }public string Id { get; }Public ReadOnly Property Id As string// You can use this property in JavaScript.
Value
PlatForm::String string string string

The unique identifier of the video profile.

SupportedPhotoMediaDescription SupportedPhotoMediaDescription SupportedPhotoMediaDescription SupportedPhotoMediaDescription

Gets a list of MediaCaptureVideoProfileMediaDescription objects that represent supported video device settings for photo capture.

public : IVectorView<MediaCaptureVideoProfileMediaDescription> SupportedPhotoMediaDescription { get; }public IReadOnlyList<MediaCaptureVideoProfileMediaDescription> SupportedPhotoMediaDescription { get; }Public ReadOnly Property SupportedPhotoMediaDescription As IReadOnlyList<MediaCaptureVideoProfileMediaDescription>// You can use this property in JavaScript.
Value
IVectorView<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription>

A list of MediaCaptureVideoProfileMediaDescription objects that represent supported video device settings for photo capture.

Remarks

You configure the capture device to use a particular MediaCaptureVideoProfileMediaDescription for photo capture by using the MediaCaptureInitializationSettings object. It is important that the video profile media description value you use when configuring the device is compatible with the other initialization settings. For more information on how to correctly use media profile descriptions in the MediaCaptureInitializationSettings, see MediaCaptureInitializationSettings.PhotoMediaDescription.

SupportedPreviewMediaDescription SupportedPreviewMediaDescription SupportedPreviewMediaDescription SupportedPreviewMediaDescription

Gets a list of MediaCaptureVideoProfileMediaDescription objects that represent supported video device settings for video preview.

public : IVectorView<MediaCaptureVideoProfileMediaDescription> SupportedPreviewMediaDescription { get; }public IReadOnlyList<MediaCaptureVideoProfileMediaDescription> SupportedPreviewMediaDescription { get; }Public ReadOnly Property SupportedPreviewMediaDescription As IReadOnlyList<MediaCaptureVideoProfileMediaDescription>// You can use this property in JavaScript.
Value
IVectorView<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription>

A list of MediaCaptureVideoProfileMediaDescription objects that represent supported video device settings for video preview.

Remarks

You configure the capture device to use a particular MediaCaptureVideoProfileMediaDescription for photo capture by using the MediaCaptureInitializationSettings object. It is important that the video profile media description value you use when configuring the device is compatible with the other initialization settings. For more information on how to correctly use media profile descriptions in the MediaCaptureInitializationSettings, see MediaCaptureInitializationSettings.PreviewMediaDescription.

SupportedRecordMediaDescription SupportedRecordMediaDescription SupportedRecordMediaDescription SupportedRecordMediaDescription

Gets a list of MediaCaptureVideoProfileMediaDescription objects that represent supported video device settings for video recording.

public : IVectorView<MediaCaptureVideoProfileMediaDescription> SupportedRecordMediaDescription { get; }public IReadOnlyList<MediaCaptureVideoProfileMediaDescription> SupportedRecordMediaDescription { get; }Public ReadOnly Property SupportedRecordMediaDescription As IReadOnlyList<MediaCaptureVideoProfileMediaDescription>// You can use this property in JavaScript.
Value
IVectorView<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription> IReadOnlyList<MediaCaptureVideoProfileMediaDescription>

A list of MediaCaptureVideoProfileMediaDescription objects that represent supported video device settings for video recording.

Remarks

You configure the capture device to use a particular MediaCaptureVideoProfileMediaDescription for photo capture by using the MediaCaptureInitializationSettings object. It is important that the video profile media description value you use when configuring the device is compatible with the other initialization settings. For more information on how to correctly use media profile descriptions in the MediaCaptureInitializationSettings, see MediaCaptureInitializationSettings.RecordMediaDescription.

VideoDeviceId VideoDeviceId VideoDeviceId VideoDeviceId

Gets the device ID of the video device associated with the video profile.

public : PlatForm::String VideoDeviceId { get; }public string VideoDeviceId { get; }Public ReadOnly Property VideoDeviceId As string// You can use this property in JavaScript.
Value
PlatForm::String string string string

The device ID of the video device associated with the video profile.

Methods

GetConcurrency() GetConcurrency() GetConcurrency() GetConcurrency()

Gets the list of MediaCaptureVideoProfile objects that can be used concurrently with this video profile.

public : IVectorView<MediaCaptureVideoProfile> GetConcurrency()public IReadOnlyList<MediaCaptureVideoProfile> GetConcurrency()Public Function GetConcurrency() As IReadOnlyList( Of MediaCaptureVideoProfile )// You can use this method in JavaScript.
Returns
IVectorView<MediaCaptureVideoProfile> IReadOnlyList<MediaCaptureVideoProfile> IReadOnlyList<MediaCaptureVideoProfile> IReadOnlyList<MediaCaptureVideoProfile>

The list of MediaCaptureVideoProfile objects that can be used concurrently with this video profile.

Remarks

You can get a list of video profiles that support concurrency by calling MediaCapture::FindConcurrentProfiles.

See Also