public ClassicPlayer( GenieNanoCamera genieNanoCamera, MockCamera mockCamera, MotorController motorController, IWriteable <ClassicPlayerSettings> settings, IWriteable <ClassicImageProcessorSettings> imgProcSettings, ILogger <ClassicPlayer> logger, ILoggerFactory loggerFactory) { _settings = settings; _logger = logger; _imgProcessor = new ClassicImageProcessor(imgProcSettings); _motorController = motorController; var channels = new VideoChannel[] { new VideoChannel("Image", "Raw Image"), new VideoChannel("EdgeDetection", "Image after EdgeDetection"), }; _videoInterface = new VideoInterface(channels, loggerFactory, nameof(ClassicPlayer)); if (genieNanoCamera.PeripheralState == PeripheralState.Ready) { _camera = genieNanoCamera; } else { _camera = mockCamera; } }
private void StartCamera(Camera cam) { SynchronizationContext context = SynchronizationContext.Current; ICamera Icam = null; if (string.IsNullOrEmpty(Program.directory)) { var camera = new SanyoNetCamera(); camera.IPAddress = cam.IpAddress; camera.UserName = "******"; camera.Password = "******"; Icam = camera; this.StartRecord(cam); } else { MockCamera mc = new MockCamera(Program.directory); mc.Repeat = true; Icam = mc; } if (presenter == null) { presenter = new Presenter(this, Icam); } System.Threading.ThreadPool.QueueUserWorkItem((object o) => { System.Exception error = null; try { Icam.Connect(); } catch (System.Net.Sockets.SocketException ex) { error = ex; } catch (System.Net.WebException ex) { error = ex; } context.Post(OnConnectionFinished, error); if (error == null) { Properties.Settings.Default.LastSelCamID = cam.ID; } }); }
private void StartCamera(Camera cam) { ICamera Icam = null; if (string.IsNullOrEmpty(Program.directory)) { SanyoNetCamera camera = new SanyoNetCamera(); camera.IPAddress = cam.IpAddress; camera.UserName = "******"; camera.Password = "******"; try { camera.Connect(); } catch (System.Net.Sockets.SocketException) { MessageBox.Show("无法连接摄像头,请检查摄像头后重新连接"); return; } catch (System.Net.WebException) { MessageBox.Show("无法连接摄像头,请检查摄像头后重新连接"); return; } Icam = camera; StartRecord(cam); Properties.Settings.Default.LastSelCamID = cam.ID; } else { MockCamera mc = new MockCamera(Program.directory); mc.Repeat = true; Icam = mc; } presenter = new Presenter(this, Icam); presenter.Start(); }
private void StartCamera(Camera cam) { SynchronizationContext context = SynchronizationContext.Current; ICamera Icam = null; if (string.IsNullOrEmpty(Program.directory)) { var camera = new SanyoNetCamera(); camera.IPAddress = cam.IpAddress; camera.UserName = "******"; camera.Password = "******"; Icam = camera; this.StartRecord(cam); } else { MockCamera mc = new MockCamera(Program.directory); mc.Repeat = true; Icam = mc; } if (presenter == null) presenter = new Presenter(this, Icam); System.Threading.ThreadPool.QueueUserWorkItem((object o) => { System.Exception error = null; try { Icam.Connect(); } catch (System.Net.Sockets.SocketException ex) { error = ex; } catch (System.Net.WebException ex) { error = ex; } context.Post(OnConnectionFinished, error); if (error == null) { Properties.Settings.Default.LastSelCamID = cam.ID; } }); }