Я пытаюсь получить каналы для камеры в приложении для стилей в стиле Windows 8, чтобы я мог сделать некоторые изменения на нем как нечто дополненное. Я попытался, но только смог найти способ захвата изображений с помощью CameraCaptureUI(). Может ли кто-нибудь сказать мне, как я могу добиться подачи камеры для AR?Как получить каналы для камеры в приложении Windows 8 Metro?
ответ
Все, что вам нужно сделать, это передать 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. Этот пример должен позволить вам создавать свои собственные эффекты.
Вы должны использовать CaptureElement и объект MediaCapture:
var mediaCapture = new MediaCapture();
await mediaCapture.InitializeAsync();
this.captureElement.Source = mediaCapture;
await mediaCapture.StartPreviewAsync();
Ссылка больше не доступна – Olivier
Извините, обновлено до нового домена. –
Да с этим я могу применить эффекты, но не может реализовать AR. Я действительно просил камеры, на которых я могу манипулировать и реализовывать эффекты AR. –
MediaCapture.AddEffectAsync - это то, что вы ищете. Он использовался в одном из примеров предварительного просмотра dev для добавления эффекта серого. – sarvesh