我希望能够在 pictureBox 上看到网络摄像头的“预览”图像,以防我在使用 MediaCapture.PrepareLowLagPhotoCaptureAsync 时只显示在 pictureBox 中捕获的图像,很快就不会显示相机看到的内容,而只是显示一个一次tidara照片,拍摄时间约为1秒
当我谷歌如何执行此操作时,它总是返回使用 CaptureElement 作为解决方案,但此类在 c# .NET 7 Form/WPF/WinUI3 中不可用,它仅在 UWP 中可用
因此,要解决我的问题,有 2 个选项,或者我可以使用 .NET 7 Form 中的 CapturElement 或其他替代方法来完成我打算在没有 CapturElement 的情况下执行的操作...那么我该如何解决我的问题呢?
https://learn.microsoft.com/en-us/uwp/api/windows.ui.xaml.controls.captureelement?view=winrt-22621
https://learn.microsoft.com/en-us/windows/uwp/audio-video-camera/simple-camera-preview-access
Edit1:我可以完全使用 MediaCapture,我在申请表中实现此问题(https://learn.microsoft.com/en-us/windows/uwp/audio-video-camera/simple-camera-preview-access )
Edit2:在我的项目中已经将 net7.0-windows10.0.17763.0 添加到主项目中
Edit3:我的问题是不使用 MediaCapture,我可以在我的表单上使用它。问题是能够使用它来保持相机打开并实时拍摄她所看到的图像并将其发送到 Form 中的 PictureBox。根据我的研究,使用了 CaptureElement,它仅在 UWP 中可用
问题
我无法使用 MediaControl 做我想做的事。很快我就被迫寻找另一种解决方案,在本例中就是 OpenCV。
解决方案
OpenCV 设法提供了我需要的一切,所以我开始使用它。但因为它更全面、更复杂,所以我决定创建WebCam-Sharp
网络摄像头-Sharp
WebCam-Sharp是我创建的一个 C# 库,它仅提供使用 OpenCV 和其他 Windows 工具的 WebCam 基础知识,以便轻松获取所用设备的功能(即,它仅适用于 Windows)。