Beispiel #1
0
 private void Start()
 {
     WebCamera.Initialize((result) =>
     {
         Debug.LogFormat("WebCamera init {0}", result ? "success" : "fail");
     });
 }
 /// <summary>
 /// Stops the video handlers.
 /// </summary>
 public void StopVideo()
 {
     if (WebCamera != null)
     {
         WebCamera.Stop();
     }
 }
Beispiel #3
0
        public MediaHandlerCollection CreateSoftPhoneVideoCallListener()
        {
            var phonecallVideoReceiver = new PhoneCallVideoReceiver();
            var phonecallVideoSender   = new PhoneCallVideoSender();
            ImageProvider <Image> remoteImageHandler = new DrawingImageProvider();
            ImageProvider <Image> localImageHandler  = new DrawingImageProvider();
            var webCamera = WebCamera.GetDefaultDevice();


            if (webCamera != null)
            {
                mediaConnector.Connect(webCamera, phonecallVideoSender);
                mediaConnector.Connect(webCamera, localImageHandler);
            }
            mediaConnector.Connect(phonecallVideoReceiver, remoteImageHandler);

            var mediaHandlers = new Dictionary <string, VoIPMediaHandler>
            {
                { "RemoteImageHandler", remoteImageHandler },
                { "LocalImageHandler", localImageHandler },
                { "VideoSender", phonecallVideoSender },
                { "VideoReceiver", phonecallVideoReceiver }
            };

            if (webCamera != null)
            {
                mediaHandlers.Add("WebCamera", webCamera);
            }


            return(new MediaHandlerCollection(mediaConnector, mediaHandlers));
        }
Beispiel #4
0
        private void connectBt_Click(object sender, EventArgs e)
        {
            try
            {
                disconnectBt.Enabled = true;

                _webCamera = new WebCamera();

                _connector.Connect(_webCamera, _liveProvider);

                _connector.Connect(_webCamera, _capture);

                _connector.Connect(_webCamera.VideoChannel, _resizeHandler);

                _resizeHandler.SetResolution(600, 800);

                liveViewer.SetImageProvider(_liveProvider);
                liveViewer.Start();



                _webCamera.Start();

                start();

                connectBt.Enabled = false;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Beispiel #5
0
        public async Task Constructor_SuccessfulConstruction_NoFrameQueried()
        {
            IWebCamera webCamera = new WebCamera(this.captureMock.Object);
            await Task.Delay(100);

            this.captureMock.Verify(c => c.QueryFrame(), Times.Never);
        }
 /// <summary>
 /// Starts the video handlers.
 /// </summary>
 public void StartVideo()
 {
     if (WebCamera != null)
     {
         WebCamera.Start();
     }
 }
 //Creating Instance of WebCam Class.
 private void CapturePhoto_Load(object sender, EventArgs e)
 {
     oWebCam           = new WebCamera();
     oWebCam.Container = pictureBox1;
     oWebCam.OpenConnection();
     Clipboard.Clear();
 }
Beispiel #8
0
        /// <summary>
        /// Initializes the video handlers (camera, image providers etc.).
        /// </summary>
        private void InitVideo()
        {
            // ----- CREATE -----
            WebCamera = WebCamera.GetDefaultDevice();

            LocalImageProvider  = new BitmapSourceProvider();
            RemoteImageProvider = new BitmapSourceProvider();

            phoneCallVideoReceiver = new PhoneCallVideoReceiver();
            phoneCallVideoSender   = new PhoneCallVideoSender();

            // ----- CONNECT -----
            videoConnector.Connect(phoneCallVideoReceiver, RemoteImageProvider);
            if (WebCamera != null)
            {
                videoConnector.Connect(WebCamera, LocalImageProvider);
                videoConnector.Connect(WebCamera, phoneCallVideoSender);
            }

            // add to collection
            Dictionary <string, VoIPMediaHandler> collection = new Dictionary <string, VoIPMediaHandler>();

            collection.Add("LocalImageProvider", LocalImageProvider);
            collection.Add("RemoteImageProvider", RemoteImageProvider);
            collection.Add("PhoneCallVideoReceiver", phoneCallVideoReceiver);
            collection.Add("PhoneCallVideoSender", phoneCallVideoSender);
            videoCollection = new MediaHandlerCollection(videoConnector, collection);
        }
Beispiel #9
0
 private void button1_Click(object sender, System.EventArgs e)
 {
     b_play.Enabled    = false;
     b_stop.Enabled    = true;
     panelPreview.Size = new Size(330, 330);
     wc = new WebCamera(panelPreview.Handle, panelPreview.Width, panelPreview.Height);
     wc.StartWebCam();
 }
Beispiel #10
0
        public FaceRecDefaultState(IFSMSystem fsmSystem, IFaceRecViewModel viewModel)
        {
            this._viewModel = viewModel;

            this._fsmSystem = fsmSystem;

            _webCam = WebCamera.GetFrontFacing();
        }
Beispiel #11
0
        private void On_TakeImageButtonClick(object sender, EventArgs e)
        {
            if (webCam != null)
            {
                if (stillImageBox.Image != null)
                {
                    stillImageBox.Image.Dispose();
                }
                if (originalPicture != null)
                {
                    originalPicture.Dispose();
                }
                try
                {
                    System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
                    // Release any previous buffer
                    if (ip != IntPtr.Zero)
                    {
                        Marshal.FreeCoTaskMem(ip);
                        ip = IntPtr.Zero;
                    }
                    // capture image
                    ip = webCam.Click();
                    originalPicture = new System.Drawing.Bitmap(webCam.Width, webCam.Height, webCam.Stride, PixelFormat.Format24bppRgb, ip);
                    originalPicture.RotateFlip(System.Drawing.RotateFlipType.RotateNoneFlipY);

                    System.Drawing.Bitmap result = new System.Drawing.Bitmap(200, 150);
                    using (System.Drawing.Graphics graph = System.Drawing.Graphics.FromImage(result))
                    {
                        graph.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.NearestNeighbor;
                        graph.DrawImage(originalPicture, 0, 0, 200, 150);
                        System.Drawing.Pen pen = new System.Drawing.Pen(System.Drawing.Color.Purple, 1);
                        for (int i = 0; i < 3; i++)
                        {
                            for (int j = 0; j < 3; j++)
                            {
                                graph.DrawRectangle(pen, 25 + 25 - 10 + 50 * j, 25 - 10 + 50 * i, 20, 20);
                            }
                        }
                        pen.Dispose();
                    }
                    stillImageBox.Image = result;
                    System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.Default;
                }
                catch
                {
                    System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(VIDEOWIDTH, VIDEOHEIGHT);
                    using (System.Drawing.Graphics graph = System.Drawing.Graphics.FromImage(bitmap))
                    {
                        System.Drawing.Rectangle size = new System.Drawing.Rectangle(0, 0, VIDEOWIDTH, VIDEOHEIGHT);
                        graph.FillRectangle(System.Drawing.Brushes.White, size);
                    }
                    stillImageBox.Image = bitmap;
                    webCam.Dispose();
                    webCam = null;
                }
            }
        }
 private void btnCancel_Click(object sender, EventArgs e)
 {
     if (oWebCam != null)
     {
         oWebCam.CloseConnection();
         oWebCam = null;
     }
     this.Close();
 }
Beispiel #13
0
        public VideoBroadcatingServer(WebCamera _camera)
        {
            _webmStreamer = new WebMStreamer(new OzConf_P_WebmStreamer(ServerConfig.Port));
            _webmStreamer.OnClientConnected    += Webm_OnClientConnected;
            _webmStreamer.OnClientDisconnected += WebmStreamer_OnClientDisconnected;

            _connector = new MediaConnector();
            _connector.Connect(_camera.VideoChannel, _webmStreamer.VideoReceiver);
        }
Beispiel #14
0
        public async Task Constructor_CameraTurnedOn_FrameQueried()
        {
            IWebCamera webCamera = new WebCamera(this.captureMock.Object);

            webCamera.On();
            await Task.Delay(100);

            this.captureMock.Verify(c => c.QueryFrame(), Times.AtLeastOnce);
        }
 private void btnRefresh_Click(object sender, EventArgs e)
 {
     oWebCam.CloseConnection();
     oWebCam.Dispose();
     oWebCam           = new WebCamera();
     oWebCam.Container = pictureBox1;
     oWebCam.OpenConnection();
     Clipboard.Clear();
 }
 // Event For Saving Captured Data
 private void btnCapture_Click(object sender, EventArgs e)
 {
     GlobalClass.VisitorImage = oWebCam.SaveImage();
     if (oWebCam != null)
     {
         oWebCam.CloseConnection();
         oWebCam = null;
     }
     this.Close();
 }
Beispiel #17
0
        public async Task Constructor_SuccessfulConstruction_NewFrameNotFired()
        {
            bool       fired     = false;
            IWebCamera webCamera = new WebCamera(this.captureMock.Object);

            webCamera.NewFrame += (s, e) => { fired = true; };
            await Task.Delay(100);

            Assert.False(fired);
        }
Beispiel #18
0
        public async Task Constructor_CameraTurnedOn_NewFrameFired()
        {
            bool       fired     = false;
            IWebCamera webCamera = new WebCamera(this.captureMock.Object);

            webCamera.NewFrame += (s, e) => { fired = true; };
            webCamera.On();
            await Task.Delay(100);

            Assert.True(fired);
        }
        void DiscoverUsbDevices()
        {
            var webCameras = WebCamera.GetDevices();

            foreach (var camera in webCameras)
            {
                var deviceInfo = new CameraDeviceInfo {
                    WebCameraInfo = camera
                };
                AddDeviceToList(deviceInfo);
            }
        }
Beispiel #20
0
 private void button_webCamera_stop_Click(object sender, EventArgs e)
 {
     if (m_webCamera != null)
     {
         m_webCamera.CloseWebcam();
         m_webCamera = null;
         //m_bStopCamera = true;
         this.button_webCamera_stop.Enabled            = false;
         this.button_webCamera_start.Enabled           = true;
         this.button_webCamera_copyToClipboard.Enabled = false;
     }
 }
Beispiel #21
0
        // bool m_bStopCamera = true;

        private void button_webCamera_start_Click(object sender, EventArgs e)
        {
            if (m_webCamera == null)
            {
                m_webCamera = new WebCamera(this.panel_camera_preview.Handle,
                                            panel_camera_preview.Width, panel_camera_preview.Height);
                m_webCamera.StartWebCam();
                //m_bStopCamera = false;
                this.button_webCamera_stop.Enabled            = true;
                this.button_webCamera_copyToClipboard.Enabled = true;
            }
        }
Beispiel #22
0
        private void Start()
        {
            Loom.Initialize();

            WebCamera.Initialize();

            VoiceReceiver.Initialize();

            GenerateModules();

            AppEntry();
        }
Beispiel #23
0
        /// <summary>
        /// Stops the video handlers.
        /// </summary>
        public void StopVideo()
        {
            if (WebCamera != null)
            {
                WebCamera.Stop();
            }

            if (videoCollection != null)
            {
                videoCollection.Stop();
            }
        }
Beispiel #24
0
 public FormClient(string init_ip)
 {
     try
     {
         InitializeComponent();
         tbAddress.Text       = init_ip;
         this.FormBorderStyle = FormBorderStyle.FixedSingle;
         camera = new WebCamera(imageBox.Handle, 0, 0, imageBox.ClientSize.Width, imageBox.ClientSize.Height);
         camera.Start();
         btnConnect_Click(this, null);
     }
     catch { }
 }
Beispiel #25
0
        public async Task Constructor_CameraTurnedOnThenTurnedOff_NewFrameNotFiredAfterOff()
        {
            bool       fired     = false;
            IWebCamera webCamera = new WebCamera(this.captureMock.Object);

            webCamera.NewFrame += (s, e) => { fired = true; };
            webCamera.On();
            fired = false;
            webCamera.Off();
            await Task.Delay(100);

            Assert.False(fired);
        }
Beispiel #26
0
 private async Task ConnectWebCamera()
 {
     await Task.Run(() =>
     {
         webCamera = WebCamera.GetDefaultDevice();
         if (webCamera == null)
         {
             return;
         }
         connector.Connect(webCamera, _provider1);
         webCamera.Start();
         videoViewerWFCamara1.Start();
     });
 }
Beispiel #27
0
        private void ConnectUSBCamera_Click(object sender, RoutedEventArgs e)
        {
            _webcamera = WebCamera.GetDefaultDevice();
            if (_webCamera == null)
            {
                return;
            }

            _connector.Connect(_webCamera, _provider);
            _videoSender = _webCamera;

            _webCamera.Start();
            _videoViewerWpf.Start();
        }
Beispiel #28
0
        private static void Main(string[] args)
        {
            Mouse mouse = new Mouse();

            mouse.PointerScreenPosition();

            Touchpad touchpad = new Touchpad();

            touchpad.PointerScreenPosition();

            WebCamera webCamera = new WebCamera();
            WebCameraToIPointerDeviceAdapter cameraAdapter = new WebCameraToIPointerDeviceAdapter(webCamera);

            cameraAdapter.PointerScreenPosition();
        }
        public MainFormPresenter(IMainForm mainForm, IMessageService messageService)
        {
            View            = mainForm;
            _messageService = messageService;
            _webCamera      = new WebCamera();
            _webCamera.StartShowCameraImage();
            // show web-camera image

            View.OnEmployeeChecked        += ViewOnEmployeeChecked;
            View.OnCheckFormClick         += View_CheckFormClick;
            View.OnReportsClick           += ViewOnReportsClick;
            View.OnSettingsClick          += ViewOnSettingsClick;
            View.OnFormShow               += ViewOnFormShow;
            View.OnFormClose              += ViewOnFormClose;
            View.OnEmployeesClick         += View_EmployeesClick;
            View.OnPostsClick             += View_PostsClick;
            _webCamera.CameraImageChanged += _webCamera_CameraImageChanged;
        }
Beispiel #30
0
 private void On_WebDeviceChanged(object sender, EventArgs e)
 {
     try
     {
         if (webCam == null || webCam.Name != (string)webCamDevices.SelectedItem)
         {
             webCam = new WebCamera(cameraDevices.First(x => x.Name == (string)webCamDevices.SelectedItem), VIDEOWIDTH, VIDEOHEIGHT, VIDEOBITSPERPIXEL, cameraFeedBox);
         }
     }
     catch
     {
         if (webCam != null)
         {
             webCam.Dispose();
         }
         webCam = null;
     }
 }
        /// <summary>
        /// Changes the camera device.
        /// </summary>
        public void ChangeCamera(int deviceID)
        {
            if (!initialized)
                return;

            // same device
            if (WebCamera != null && WebCamera.DeviceID == deviceID)
                return;

            // find the proper info
            VideoDeviceInfo newDeviceInfo = null;
            foreach (var info in Cameras)
            {
                if (info.DeviceID != deviceID)
                    continue;

                newDeviceInfo = info;
                break;
            }

            if (newDeviceInfo == null)
                return;

            // begin change device
            bool capturing = false;

            if (WebCamera != null)
            {
                // disconnect
                if (LocalImageProvider != null)
                    audioConnector.Disconnect(WebCamera, LocalImageProvider);
                audioConnector.Disconnect(WebCamera, phoneCallVideoSender);

                // dispose previous device
                capturing = WebCamera.Capturing;
                WebCamera.Stop();
                WebCamera.Dispose();
            }

            // create new
            WebCamera = WebCamera.GetDevice(newDeviceInfo);

            if (WebCamera != null)
            {
                audioConnector.Connect(WebCamera, LocalImageProvider);
                audioConnector.Connect(WebCamera, phoneCallVideoSender);

                if (capturing)
                    WebCamera.Start();
            }

            OnPropertyChanged("WebCamera");
        }
 public WebCameraEngine(VideoDeviceInfo device)
 {
     _camera = WebCamera.GetDevice(device);
     _microphone = Microphone.GetDefaultDevice();
 }
        /// <summary>
        /// Occurs when the Camera settings has been changed.
        /// </summary>
        /// <param name="info">Contains information about the settings.</param>
        public void CameraSettingsHasChanged(VideoSettingsInfo info)
        {
            if (camera == null) return;

            camera.Resolution = info.SelectedResolution;
            if (camera.DeviceID != info.SelectedDevice)
            {
                var list = WebCamera.GetDevices();
                foreach (var videoDeviceInfo in list)
                {
                    if (videoDeviceInfo.DeviceID==info.SelectedDevice)
                    {
                        camera.Stop();
                        mediaConnector.Disconnect(camera, phonecallVideoSender);
                        mediaConnector.Disconnect(camera, localImageHandler);
                        camera = WebCamera.GetDevice(videoDeviceInfo);
                        camera.Start();
                        mediaConnector.Connect(camera, phonecallVideoSender);
                        mediaConnector.Connect(camera, localImageHandler);
                    }
                }
            }
        }
Beispiel #34
0
    void Start()
    {
        m_webCamera = new WebCamera ();
        m_webCamQuad = m_webCamQuad_iphone;

        if (Globe.isPad) {
            m_webCamera.aspect = 3f / 4f;
            m_webCamQuad = m_webCamQuad_ipad;
        }

        #if UNITY_IPHONE
        rotateIndex=1;
        #elif UNITY_ANDROID
        rotateIndex=0;
        m_webCamQuad.localScale=new Vector3(m_webCamQuad.localScale.x*(-1),m_webCamQuad.localScale.y,m_webCamQuad.localScale.z);
        #endif
    }
        /// <summary>
        /// Initializes the video handlers (camera, image providers etc.).
        /// </summary>
        private void InitVideo()
        {
            // ----- CREATE -----
            WebCamera = WebCamera.GetDefaultDevice();

            LocalImageProvider = new BitmapSourceProvider();
            RemoteImageProvider = new BitmapSourceProvider();

            phoneCallVideoReceiver = new PhoneCallVideoReceiver();
            phoneCallVideoSender = new PhoneCallVideoSender();

            // ----- CONNECT -----
            videoConnector.Connect(phoneCallVideoReceiver, RemoteImageProvider);
            if (WebCamera != null)
            {
                videoConnector.Connect(WebCamera, LocalImageProvider);
                videoConnector.Connect(WebCamera, phoneCallVideoSender);
            }

            // add to collection
            Dictionary<string, VoIPMediaHandler> collection = new Dictionary<string, VoIPMediaHandler>();
            collection.Add("LocalImageProvider", LocalImageProvider);
            collection.Add("RemoteImageProvider", RemoteImageProvider);
            collection.Add("PhoneCallVideoReceiver", phoneCallVideoReceiver);
            collection.Add("PhoneCallVideoSender", phoneCallVideoSender);
            videoCollection = new MediaHandlerCollection(videoConnector, collection);
        }
        /// <summary>
        /// Creates the incoming and outgoing media handlers such as microphone or speaker
        /// </summary>
        private void CreateMediaHandlers()
        {
            MediaHandlerFactory factory = new MediaHandlerFactory();
            activeAudioCallListener = factory.CreateSoftPhoneCallListener();
            activeVideoCallListener = factory.CreateSoftPhoneVideoCallListener();

            phoneCallAudioReceiver = activeAudioCallListener.GetComponent("AudiReceiver") as PhoneCallAudioReceiver;
            phoneCallAudioSender = activeAudioCallListener.GetComponent("AudioSender") as PhoneCallAudioSender;

            phonecallVideoSender = activeVideoCallListener.GetComponent("VideoSender") as PhoneCallVideoSender;
            phonecallVideoReceiver = activeVideoCallListener.GetComponent("VideoReceiver") as PhoneCallVideoReceiver;

            mediaConnector = activeAudioCallListener.MediaConnector;

            microphone = activeAudioCallListener.GetComponent("Microphone") as Microphone;
            if (microphone != null)
            {
                microphone.LevelChanged += (Microphone_LevelChanged);
            }

            speaker = activeAudioCallListener.GetComponent("Speaker") as Speaker;
            if (speaker != null)
            {
                speaker.LevelChanged += (Speaker_LevelChanged);
            }

            incomingDataMixer = activeAudioCallListener.GetComponent("SpeakerMixer") as AudioMixerMediaHandler;
            camera = activeVideoCallListener.GetComponent("WebCamera") as WebCamera;

            remoteImageHandler = activeVideoCallListener.GetComponent("RemoteImageHandler") as ImageProvider<Image>;
            localImageHandler = activeVideoCallListener.GetComponent("LocalImageHandler") as ImageProvider<Image>;

            AudioProcessor = activeAudioCallListener.GetComponent("AudioProcessor") as AudioQualityEnhancer;
            outgoingDataMixer = activeAudioCallListener.GetComponent("OutGoingDataMixer") as AudioMixerMediaHandler;
            RecordDataMixer = activeAudioCallListener.GetComponent("RecordDataMixer") as AudioMixerMediaHandler;

            dtmfEventWavePlayer = activeAudioCallListener.GetComponent("DTMF") as DtmfEventWavePlayer;
            ringtoneWavePlayer = activeAudioCallListener.GetComponent("Ringtones") as PhoneCallStateWavePlayer;

            Stream basicRing = Assembly.GetExecutingAssembly().GetManifestResourceStream(
                "OzekiDemoSoftphone.Resources.basic_ring.wav"
                );

            ringtoneWavePlayer.UpdateIncomingStateStream(CallState.Ringing, @"..\..\Resources\basic_ring.wav");
            ringtoneWavePlayer.UpdateOutgoingStateStream(CallState.Ringing, @"..\..\Resources\ringback.wav");
        }