4

我正在使用 C# 和 .Net4.0 开发在线视频会议项目。

我想要一个库或代码,可用于每秒以不同形式收集网络摄像头图像。我通过使用 AVICAP32 来尝试这个,我们在其中发送消息用于不同的目的,例如复制或编辑帧。但是在此我们必须在创建处理程序时传递图片框的引用,如下所示:

mCapHwnd = capCreateCaptureWindowA("0", 268435456 | 1073741824, 0, 0, 640, 480,picturebox1.Handle.ToInt32(), 0);

使用这些命令我可以捕获图像,但是当我最小化图片框表单时问题就来了。那时不会创造新的形象。

我认为这是因为我最小化了表单,当它从剪贴板复制图像时,它没有显示任何内容。

我怎么解决这个问题 。任何类型的帮助将不胜感激。

谢谢 srdusad

4

3 回答 3

8

我已经使用所有提到的技术(WIA、AviCap 和 DirectShow)完成了这项工作。DirectShow 是您的最佳选择。查看免费的 DirectShowNet 库,它是 DirectShow 的 .NET 包装器,它甚至包括示例:http ://directshownet.sourceforge.net/

更新 2012-07-26:我刚刚发布了我的 Windows 应用程序 CamTimer 的完整源代码(用 .NET/C# 编写)。在https://github.com/johanssonrobotics/CamTimer下载/查看完整代码(带有工作网络摄像头示例)

于 2010-05-25T11:15:43.773 回答
0

如果你觉得舒服,你可以使用 VLC。VLC 提供了处理网络摄像头的工具。

于 2010-05-21T14:05:00.737 回答
0

使用 WIA 的其他方法http://www.codeproject.com/KB/cs/WebCamService.aspx

于 2010-06-04T05:53:48.227 回答