示例#1
0
 protected override void OnLoadDefaults()
 {
     webcambuffer     = new WebCamBuffer();
     folderLocation   = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
     fileNamePrefix   = "Mayhem";
     captureWidth     = 640;
     captureHeight    = 480;
     showPreview      = true;
     playShutterSound = true;
 }
示例#2
0
 protected void ReleasePreviousBuffers()
 {
     if (webcambuffer != null && selectedCameraIndex != -1)
     {
         for (int i = 0; i < webcambuffer.SubscribedImagers.Count; i++)
         {
             webcambuffer.UnregisterForImages(webcambuffer.SubscribedImagers[i]);
         }
         Thread.Sleep(30);
         webcambuffer.ClearBuffer();
         webcambuffer = null;
     }
 }
示例#3
0
        void InitializeSnapshot(int cameraindex)
        {
            Thread thread = new Thread(() =>
            {
                try
                {
                    ReleasePreviousBuffers();
                    if (webcambuffer == null)
                    {
                        webcambuffer = new WebCamBuffer();
                    }
                    webcambuffer.RegisterForImages(WebcamManager.GetCamera(cameraindex));
                }
                catch (Exception err)
                {
                    MessageBox.Show(err.ToString());
                }
            });

            thread.SetApartmentState(ApartmentState.STA);
            thread.Start();
        }
示例#4
0
 protected override void OnLoadFromSaved()
 {
     webcambuffer  = new WebCamBuffer();
     captureWidth  = 640;
     captureHeight = 480;
 }