2

Я пытаюсь получить каналы для камеры в приложении для стилей в стиле Windows 8, чтобы я мог сделать некоторые изменения на нем как нечто дополненное. Я попытался, но только смог найти способ захвата изображений с помощью CameraCaptureUI(). Может ли кто-нибудь сказать мне, как я могу добиться подачи камеры для AR?Как получить каналы для камеры в приложении Windows 8 Metro?

ответ

2

Все, что вам нужно сделать, это передать CameraCaptureUIMode.Video для CaptureFileAsync. Вот пример

CameraCaptureUI dialog = new CameraCaptureUI(); 
dialog.VideoSettings.Format = CameraCaptureUIVideoFormat.Mp4; 

StorageFile file = null; 
file = await dialog.CaptureFileAsync(CameraCaptureUIMode.Video); 
if (file != null) 
{ 

    IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read); 
    //Do something with the stream 
} 

EDIT:

Для того, чтобы применить эффекты, которые вы можете использовать метод AddEffectAsync, например.

mediaCaptureMgr.AddEffectAsync(MediaStreamType.VideoPreview, "Microsoft.Samples.GrayscaleEffect", null); 

Реализация GrayFaceEffect в Microsoft Foundation Transform (MFT) является [здесь]. 1. Этот пример должен позволить вам создавать свои собственные эффекты.

+0

Да с этим я могу применить эффекты, но не может реализовать AR. Я действительно просил камеры, на которых я могу манипулировать и реализовывать эффекты AR. –

+0

MediaCapture.AddEffectAsync - это то, что вы ищете. Он использовался в одном из примеров предварительного просмотра dev для добавления эффекта серого. – sarvesh

1

I blogged about it before.

Вы должны использовать CaptureElement и объект MediaCapture:

var mediaCapture = new MediaCapture(); 
await mediaCapture.InitializeAsync(); 
this.captureElement.Source = mediaCapture; 
await mediaCapture.StartPreviewAsync(); 
+0

Ссылка больше не доступна – Olivier

+1

Извините, обновлено до нового домена. –