internal void Disconnect() { if (camera == null) return; videoViewer.Stop(); camera.Stop(); Log.Write("StopVideoCapturing() Disconnecting camera.VideoChannel and detector"); connector.Disconnect(camera.VideoChannel, detector); Log.Write("StopVideoCapturing() Disconnecting camera.VideoChannel and provider"); connector.Disconnect(camera.VideoChannel, provider); //connector.Disconnect(detector, provider); camera = null; }
internal void Connect(string url) { if (camera != null) Disconnect(); camera = new OzekiCamera(url); camera.CameraStateChanged += OnCameraStateChanged; camera.CameraErrorOccurred += OnCameraErrorOccurred; Log.Write("StopVideoCapturing() Connecting camera.VideoChannel and detector"); connector.Connect(camera.VideoChannel, detector); //connector.Connect(detector, provider); //Needed if we want to highlight the motion on screen Log.Write("StopVideoCapturing() Connecting camera.VideoChannel and provider"); connector.Connect(camera.VideoChannel, provider); camera.Start(); if (videoViewerVisible) videoViewer.Start(); }