WinForms AForge实现视频摄像头功能

WinForms 的摄像头功能,说难不难,但第一次搞还是容易踩坑。这个教程用的是 AForge.VideoAForge.Video.DirectShow,基本上把常用的预览、捕捉、全覆盖了。

摄像头设备的获取挺方便,直接用 FilterInfoCollection 枚举就行。你挑一个设备,新建 VideoCaptureDevice,再挂个 NewFrame 事件,把实时图像渲染到 PictureBox,响应也快,代码也简单。

每一帧的数据是 Bitmap 类型,起来蛮灵活的。你可以加滤镜、做识别、存图,甚至推流。想扩展成监控工具或者人脸识别演示也没问题。只要你肯折腾,这玩意还挺能玩出花样。

启动和关闭摄像头记得写在窗体的 LoadFormClosing 事件里,不然容易资源没释放,卡住或崩溃。

对了,NuGet 装库的时候记得加上那两个 AForge 的包,手动加也行。预览效果靠 ResolutionFrameRate 调调参数就能优化。真要做项目,用 VideoFileWriter 写视频文件也还不错。

如果你正在用 WinForms 做多媒体、视频会议或者监控之类的功能,这套方案可以说是入门+进阶的不错选择。

rar 文件大小:196.57KB