private void Form1_Load(object sender, EventArgs e)
        {
            try
            {
                // 枚举所有视频输入设备
                videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);                if (videoDevices.Count == 0)
                    throw new ApplicationException();                foreach (FilterInfo device in videoDevices)
                {
                    tscbxCameras.Items.Add(device.Name);
                }                tscbxCameras.SelectedIndex = 0;
            }
            catch (ApplicationException)
            {
                tscbxCameras.Items.Add("No local capture devices");
                videoDevices = null;
            }
        }        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            CameraConn();
        }        private void CameraConn()
        {
            VideoCaptureDevice videoSource = new VideoCaptureDevice(videoDevices[tscbxCameras.SelectedIndex].MonikerString);
            videoSource.DesiredFrameSize = new Size(320, 240);
            videoSource.DesiredFrameRate = 1;            videPlayer.VideoSource = videoSource;
            videPlayer.Start();
        }        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            videPlayer.SignalToStop();
            videPlayer.WaitForStop();
        }        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            toolStripButton2_Click(null, null);
        }
         private void toolStripButton3_Click(object sender, EventArgs e)          {              flag = 0;              videoSource.NewFrame += new NewFrameEventHandler(video_NewFrame);          }                private void video_NewFrame(object sender, NewFrameEventArgs eventArgs)          {              Bitmap bitmap = (Bitmap)eventArgs.Frame.Clone();              if (flag == 0)              {                  string img = dirc + "/" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".jpg";                  bitmap.Save(img);                  flag = 1;                  }    protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }AForge 视频处理