2016-08-09 5 views
3

Я пытаюсь открыть переднюю камеру, но ее открытая камера заднего вида по умолчанию. Предложите мне, как этого достичь?Открытая камера лицевой панели

CameraCaptureUI captureUI = new CameraCaptureUI(); 
captureUI.PhotoSettings.Format = CameraCaptureUIPhotoFormat.Jpeg; 
StorageFile photo =await captureUI.CaptureFileAsync(CameraCaptureUIMode.Photo); 

if (photo == null) 
{ 
    // User cancelled photo capture 
    return; 
} 

ответ

1

Вместо CameraCaptureUI, вы можете попробовать использовать класс MediaCapture: https://msdn.microsoft.com/en-us/library/windows/apps/xaml/dn642092.aspx

Вы можете запросить доступные камеры с помощью класса DeviceInformation, например:

DeviceInformation device = (await DeviceInformation.FindAllAsync(DeviceClass.VideoCapture)) 
     .FirstOrDefault(d => d.EnclosureLocation != null && d.EnclosureLocation.Panel == Windows.Devices.Enumeration.Panel.Front); 

и если а устройство возвращается, задает его идентификатор в классе MediaCaptureInitializationSettings:

MediaCaptureInitializationSettings settings = new MediaCaptureInitializationSettings(); 
settings.VideoDeviceId = device.Id; 

MediaCapture mediaCapture = new MediaCapture(); 
await mediaCapture.InitializeAsync(settings); 
Смежные вопросы