Exemplo n.º 1
0
 /// <summary>
 /// Method that is called when the view item is closed. The view item should free all resources when the method is called.
 /// Is called when userControl is not displayed anymore. Either because of
 /// user clicking on another View or Item has been removed from View.
 /// </summary>
 public override void Close()
 {
     _playbackWpfUserControl.Close();
     _imageViewerControl.Disconnect();
     _imageViewerControl.Close();
     _audioPlayerControl.Disconnect();
     _audioPlayerControl.Close();
     ClientControl.Instance.ReleasePlaybackController(_playbackFQID);
     RemoveApplicationEventListeners();
 }
Exemplo n.º 2
0
 public void Disconnect()
 {
     if (_audioPlayerControl.MicrophoneFQID != null)
     {
         _audioPlayerControl.Disconnect();
     }
 }
Exemplo n.º 3
0
        private void OnMicrophoneSelected(object sender, EventArgs e)
        {
            if (comboBoxAudio.SelectedIndex == 0)
            {
                return;
            }

            if (_audioPlayerControl1 != null)
            {
                _audioPlayerControl1.Disconnect();
                _audioPlayerControl1.Close();
                _audioPlayerControl1.Dispose();
                _audioPlayerControl1 = null;
            }

            /*
             * if (_userContext != null)
             * {
             *  VideoOS.Platform.SDK.MultiEnvironment.Logout(_userContext);
             *  _userContext = null;
             * }*/

            try
            {
                if (_userContext == null)
                {
                    _userContext = VideoOS.Platform.SDK.MultiEnvironment.CreateSingleServerUserContext(textBoxUser.Text,
                                                                                                       textBoxPassword.Text, checkBoxAd.Checked, new UriBuilder(textBoxServer.Text).Uri);
                    VideoOS.Platform.SDK.MultiEnvironment.LoginUserContext(_userContext, false, false);
                }

                if (comboBoxAudio.SelectedIndex == 0 || comboBoxAudio.SelectedIndex > comboBoxAudio.Items.Count)
                {
                    return;
                }
                string name = comboBoxAudio.Items[comboBoxAudio.SelectedIndex].ToString();
                string xml  = File.ReadAllText(name);

                _audioPlayerControl1 = ClientControl.Instance.GenerateAudioPlayerControl();

                panel2.Controls.Clear();
                panel2.Controls.Add(_audioPlayerControl1);

                //_imageViewerControl1.CameraFQID = _selectItem1.FQID;  --- this is replaced with below line:
                _audioPlayerControl1.SetAudioXml(
                    _userContext.Configuration.ServerFQID.ServerId.UserContext, xml);

                //FQID cameraFQID = _audioPlayerControl1.CameraFQID;
                //_selectItem1 = _userContext.Configuration.GetItem(cameraFQID);


                _audioPlayerControl1.Initialize();
                _audioPlayerControl1.Connect();
                _audioPlayerControl1.PlaybackControllerFQID = _playbackFQID;
            }
            catch (Exception ex)
            {
                MessageBox.Show("Unable to login - " + ex.Message);
            }
        }
Exemplo n.º 4
0
        private void Window_Closed(object sender, EventArgs e)
        {
            _imageViewerControl.Disconnect();
            _imageViewerControl.Close();
            _imageViewerControl.Dispose();

            if (_microphonePlayer != null)
            {
                _microphonePlayer.Disconnect();
                _microphonePlayer.Close();
                _microphonePlayer.Dispose();
            }

            if (_speakerPlayer != null)
            {
                _speakerPlayer.Disconnect();
                _speakerPlayer.Close();
                _speakerPlayer.Dispose();
            }


            if (_playbackFQID != null)
            {
                ClientControl.Instance.ReleasePlaybackController(_playbackFQID);
                _playbackFQID = null;
            }
            _mc?.Dispose();
            _dateTimePicker?.Dispose();
            _winFormsHost.Dispose();
        }
Exemplo n.º 5
0
 private void OnAudio1CheckChanged(object sender, EventArgs e)
 {
     if (checkBoxAudio.Checked)
     {
         if (_related1Microphone != null)
         {
             _audioPlayerControl1Microphone.Connect();
             if (EnvironmentManager.Instance.Mode == Mode.ClientLive)
             {
                 _audioPlayerControl1Microphone.StartLive();
             }
             else
             {
                 _audioPlayerControl1Microphone.StartBrowse();
             }
         }
         if (_related1Speaker != null)
         {
             _audioPlayerControl1Speaker.Connect();
             if (EnvironmentManager.Instance.Mode == Mode.ClientLive)
             {
                 _audioPlayerControl1Speaker.StartLive();
             }
             else
             {
                 _audioPlayerControl1Speaker.StartBrowse();
             }
         }
     }
     else
     {
         _audioPlayerControl1Microphone.Disconnect();
         _audioPlayerControl1Speaker.Disconnect();
     }
 }
        private void FillMicrophoneSelection()
        {
            if (_audioPlayerControl.MicrophoneFQID != null)
            {
                _audioPlayerControl.Disconnect();
            }
            if (_audioPlayerControlSpeaker.MicrophoneFQID != null)
            {
                _audioPlayerControlSpeaker.Disconnect();
            }

            if (_selectedCameraItem == null)
            {
                return;
            }

            foreach (Item item in _selectedCameraItem.GetRelated())
            {
                if (item.FQID.Kind == Kind.Microphone)
                {
                    _audioPlayerControl.MicrophoneFQID = item.FQID;
                    _audioPlayerControl.Initialize();
                    _audioPlayerControl.Connect();
                }
                if (item.FQID.Kind == Kind.Speaker)
                {
                    _audioPlayerControlSpeaker.MicrophoneFQID = item.FQID;
                    _audioPlayerControlSpeaker.Initialize();
                    _audioPlayerControlSpeaker.Connect();
                }
            }
        }
Exemplo n.º 7
0
        /// <summary>
        /// Is called when userControl is not displayed anymore. Either because of
        /// user clicking on another View or Item has been removed from View.
        /// </summary>
        public override void Close()
        {
            RemoveApplicationEventListeners();
            if (_imageViewerControl.CameraFQID != null)
            {
                _imageViewerControl.Disconnect();
                _imageViewerControl.Close();
            }
            if (_audioPlayerControl.MicrophoneFQID != null)
            {
                _audioPlayerControl.Disconnect();
                _audioPlayerControl.Close();
            }
            _imageViewerControl.Dispose();
            _imageViewerControl = null;

            _audioPlayerControl.Dispose();
            _audioPlayerControl = null;
        }
Exemplo n.º 8
0
 private void OnAudio2CheckChanged(object sender, EventArgs e)
 {
     if (checkBoxAudio2.Checked)
     {
         _audioPlayerControl2Microphone.Connect();
         _audioPlayerControl2Speaker.Connect();
         if (mode2InLive)
         {
             _audioPlayerControl2Microphone.StartLive();
             _audioPlayerControl2Speaker.StartLive();
         }
         else
         {
             _audioPlayerControl2Microphone.StartBrowse();
             _audioPlayerControl2Speaker.StartBrowse();
         }
     }
     else
     {
         _audioPlayerControl2Microphone.Disconnect();
         _audioPlayerControl2Speaker.Disconnect();
     }
 }
Exemplo n.º 9
0
        private void OnSelect1Click(object sender, EventArgs e)
        {
            if (_imageViewerControl1 != null)
            {
                _imageViewerControl1.Disconnect();
            }

            _audioPlayerControl1.Disconnect();
            _audioPlayerControl1.Close();

            ItemPickerForm form = new ItemPickerForm();

            form.KindFilter = Kind.Camera;
            form.AutoAccept = true;
            form.Init(Configuration.Instance.GetItems());
            if (form.ShowDialog() == DialogResult.OK)
            {
                _selectItem1       = form.SelectedItem;
                buttonSelect1.Text = _selectItem1.Name;

                _imageViewerControl1             = ClientControl.Instance.GenerateImageViewerControl();
                _imageViewerControl1.Dock        = DockStyle.Fill;
                _imageViewerControl1.ClickEvent += new EventHandler(ImageViewerControl1Click);
                panel1.Controls.Clear();
                panel1.Controls.Add(_imageViewerControl1);
                _imageViewerControl1.CameraFQID = _selectItem1.FQID;
                _imageViewerControl1.Initialize();
                _imageViewerControl1.Connect();
                _imageViewerControl1.Selected = true;
                buttonMode.Enabled            = true;

                // Test for any related microphones, and pick out the first one
                _related1Microphone     = null;
                checkBoxAudio.Enabled   = false;
                checkBoxSpeaker.Enabled = false;
                List <Item> related = _selectItem1.GetRelated();

                _outgoingSpeakerController.Close(0);
                _fromPCMicInitialized = false;
                _outgoingSpeakerController.OutgoingAudioErrorText = "";

                if (related != null)
                {
                    foreach (Item item in related)
                    {
                        if (item.FQID.Kind == Kind.Microphone)
                        {
                            _related1Microphone   = item;
                            checkBoxAudio.Enabled = true;
                            _audioPlayerControl1.MicrophoneFQID = _related1Microphone.FQID;
                            _audioPlayerControl1.Initialize();
                            checkBoxAudio.Checked = true;
                        }
                        if (item.FQID.Kind == Kind.Speaker)
                        {
                            _related1Speaker          = item;
                            checkBoxSpeaker.Enabled   = true;
                            checkBoxSpeaker.Checked   = true;
                            this.buttonTalk.Enabled   = true;
                            this.rb_pc_mic.Checked    = _fromPCMic;
                            this.rb_from_file.Checked = !_fromPCMic;

                            if (this.rb_pc_mic.Checked && _related1Speaker != null)
                            {
                                BeginInvoke(new MethodInvoker(delegate() { InitializePCMicToSpeaker(); }));
                            }
                        }
                    }
                }
                onCheckedChanged_Speaker(this.checkBoxSpeaker, null);
                OnAudio1CheckChanged(this.checkBoxAudio, null);
            }
        }