MediaCapture抓住单帧

时间:2015-05-12 09:53:00

标签: c# winrt-xaml windows-8.1

我正试图通过使用MediaCapture类来抓取一个帧。我已经查看了各种教程,但所有这些教程都集中在简单的东西上。我还看了下面的内容:Access preview frame from MediaCapture,但该教程侧重于Windows 10。

所以,第一个问题是,这甚至可能吗?其次,如果是的话,有没有人有一些建议呢?

非常感谢提前!

1 个答案:

答案 0 :(得分:0)

我从您的代码中假设这是针对桌面的?因为Phone总是有一个API来捕获预览帧(yes = ('y', 'Y') no = ('n', 'N') def example(): if egg.startswith(no): # Break out of loop. raise StopIteration() elif egg.startswith(yes): # Nothing here, block may loop again. print() try: while True: egg = input("Do you want to continue? y/n") example() except StopIteration: pass ,请参见此处:https://msdn.microsoft.com/en-us/library/windows/apps/xaml/windows.phone.media.capture.photocapturedevice.aspx)。但请记住,此时不推荐使用Windows.Phone.Media.Capture。

在桌面设备上,您不妨全面了解一下。它不会明显变慢,因为USB摄像机通常只有一个流用于所有捕获类型(预览,照片,视频,请参阅:https://msdn.microsoft.com/en-us/library/windows/apps/windows.media.capture.videodevicecharacteristic.aspx),这意味着所有流将以相同的分辨率运行

查看PhotoCaptureDevice.GetPreviewBuffer*MediaCapture.CapturePhotoToStreamAsync()。更多信息请点击此处:https://msdn.microsoft.com/en-us/library/windows/apps/hh700840