2

我正在尝试在 Windows 8 Metro 风格应用程序中获取摄像头信息,以便我可以对其进行一些更改,例如增强现实。我已经尝试过,但只能找到如何使用 CameraCaptureUI() 捕获图像。谁能告诉我如何实现 AR 的摄像头馈送?

4

2 回答 2

2

您需要做的就是为 CaptureFileAsync 传入 CameraCaptureUIMode.Video。这是一个示例

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
}

编辑:

例如,为了应用效果,您可以使用 AddEffectAsync 方法。

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

GrayScaleEffect 的 Microsoft Foundation Transform (MFT) 实现在 [此处]。1 . 该示例应该允许您创建自己的效果。

于 2012-02-27T18:40:45.357 回答
1

以前在博客上写过

您需要使用 CaptureElement 和 MediaCapture 对象:

var mediaCapture = new MediaCapture(); 
await mediaCapture.InitializeAsync(); 
this.captureElement.Source = mediaCapture; 
await mediaCapture.StartPreviewAsync(); 
于 2012-02-27T20:14:44.833 回答