You can use the Device.Media object to record or pick a video from device library.
// It will be a FileInfo, or NULL if anything went wrong.
You provide a parameter to the TakeVideo() method to specify the settings. By default,
VideoQuality = VideoQuality.Medium, // Default is High
Camera = CameraOption.Front, // Default is Rear
VideoMaxDuration = 10.Seconds(), // Default is unlimited
AllowEditing = false // Default is true
var capturedVideo = await Device.Media.TakeVideo(settings);
This works in a similar way to capturing video, but there is no setting needed or supported.
All media methods will first automatically check the permissions and request the user for access if necessary.
You only need to handle whether the result is null; which happens if: