我正在使用C#和.Net4.0进行在线视频会议项目。
我想要一个库或代码,我可以用它来以不同的形式每秒收集网络摄像头图像。我通过使用AVICAP32来尝试这个,我们在其中发送消息用于不同目的,如复制或编辑帧。但是在此我们必须在创建处理程序时传递picturebox的引用,如下所示:
mCapHwnd = capCreateCaptureWindowA("0", 268435456 | 1073741824, 0, 0, 640, 480,picturebox1.Handle.ToInt32(), 0);
使用这些命令我能够捕获图像,但是当我最小化图片框形式时会出现问题。那时候不会创造新的形象。
我认为这是因为我最小化了表单,当它从这个剪贴板复制图像时它没有显示任何内容。
我该如何解决这个问题。任何类型的帮助将不胜感激。
由于 srdusad
答案 0 :(得分:8)
我使用所有提到的技术(WIA,AviCap和DirectShow)完成了这项工作。 DirectShow是您的最佳选择。查看免费的DirectShowNet库,它是DirectShow的.NET包装器,它甚至包括样本:http://directshownet.sourceforge.net/
更新2012-07-26:我刚刚发布了我的Windows应用程序CamTimer的完整源代码(用.NET / C#编写)。在https://github.com/johanssonrobotics/CamTimer
下载/查看完整代码(包含有效的网络摄像头示例)答案 1 :(得分:0)
如果您感觉舒服,可以使用VLC。 VLC提供处理网络摄像头的工具。
答案 2 :(得分:0)