我正在制作一个将在内置两个网络摄像头的平板设备上运行的应用程序。其中一个要求是能够捕获图像并保存它们。
到目前为止,我已经能够使用此代码获得网络摄像头输出的预览
Dim Job As New LiveJob
Dim source As LiveDeviceSource
source = Job.AddDeviceSource(EncoderDevices.FindDevices(EncoderDeviceType.Video).Item(0), Nothing)
source.PreviewWindow = New PreviewWindow(New HandleRef(Me.panPreview, Me.panPreview.Handle))
Job.ActivateSource(source)
这将在托管的 winforms 面板中显示预览。问题是如何从这个流中捕获图像并返回一个新的图像对象以供以后处理?
我尝试使用 RenderTargetBitmap 捕获 winforms 主机,但只返回一个黑色矩形,它不会让我渲染 winforms 面板。