Aforge.VIdeo 摄像使用 附带demo Aforge DLL

首先看看调用摄像头


 FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);//摄像头实例对象

int  sumVideo = videoDevices.Count;//找到计算机所有的摄像头 数量 ,没有摄像头的话 就等于 0
videoSource.ProvideSnapshots = true; //是否设定快门键 作用于摄像头,下面 videoSource_SnapshotFrame; 快门事件是否生效.

videoSource.SnapshotFrame += videoSource_SnapshotFrame;快门事件
videoSource.NewFrame += videoSource_NewFrame; //在此事件中把把摄像头共享给其他控件使用 如(pic图片控件,摄像头画面可有在显示在pic控件中)
如果使用 Controls videoSourcePlayer控件的话.则使用以下语句 获取摄像源
videoSourcePlayer = new AForge.Controls.VideoSourcePlayer(); 
videoSourcePlayer.VideoSource = videoSource;
videoSourcePlayer.Start();

 videoSource_NewFrame 事件实现
 void videoSource_NewFrame(object sender, AForge.Video.NewFrameEventArgs eventArgs)
        {
          
                        Image img = (Image)eventArgs.Frame.Clone();
                        PicVideo.BackgroundImage = img;
                        GC.Collect();
                
            }

这样就可以把摄像头画面 赋予 PicVideo 控件中显示(PictureBox图片控件)

videoSource_SnapshotFrame 事件实现 - 快门事件(如摄像头有快门键话,按下就可以触发此事件)-如出现按下快门键没有触发此事件的情况,则可能摄像头按键不支持.(情况较少出现)
    void videoSource_SnapshotFrame(object sender, NewFrameEventArgs eventArgs)
        {
            try
            {

//按下快门事件,就截图照片. 赋值于 pictureBox1 控件中显示
                pictureBox1.BackgroundImage = Image.FromHbitmap(videoSourcePlayer.GetCurrentVideoFrame().GetHbitmap());
            }
            catch(Exception ex)
            {
            }
        }

按以上步骤 正常情况是可成功操作摄像头的.

demo 下载地址:百度云 http://pan.baidu.com/s/1o6A1D9o (附带DLL)


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值