MediaCapture StartPreviewAsync fails

本文关键字:fails StartPreviewAsync MediaCapture | 更新日期: 2023-09-27 18:26:19

我正试图从我的UWP应用程序中的相机开始视频预览捕获,但StartPreviewAsync抛出异常

样本代码:

MediaCapture mc = new MediaCapture();
await mc.InitializeAsync();
await mc.StartPreviewAsync();

MediaCapture StartPreviewAsync fails

发生此错误是因为当前StartPreviewAsync需要一个接收器将帧输出到。可以通过在xaml中创建一个捕获元素来显示帧来修复此问题。

<CaptureElement Name="captureElement"/>

现在可以更新代码以在屏幕上显示预览

MediaCapture mc = new MediaCapture();
await mc.InitializeAsync();
captureElement.Source = mc;
await mc.StartPreviewAsync();

如果你想在不向屏幕显示任何内容的情况下启动预览,你可以在应用程序逻辑中创建captureElement,而无需添加到视图中。

var captureElement = new CaptureElement();