示例#1
0
        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;
            }
        }
示例#2
0
        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;
                }
            });
        }
示例#3
0
        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();
        }
示例#4
0
        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();
        }
示例#5
0
        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;
                    }

                });
        }