Ejemplo n.º 1
0
 protected virtual void Dispose(bool disposing)
 {
     if (disposing)
     {
         System.Dispose();
         AudioDeviceDriver.Dispose();
         FileSystem.Dispose();
         Memory.Dispose();
     }
 }
Ejemplo n.º 2
0
        protected virtual void Dispose(bool disposing)
        {
            if (disposing)
            {
                ConfigurationState.Instance.Hid.InputConfig.Event -= Hid.RefreshInputConfigEvent;

                System.Dispose();
                Host1x.Dispose();
                AudioDeviceDriver.Dispose();
                FileSystem.Unload();
                Memory.Dispose();
            }
        }
Ejemplo n.º 3
0
        private void Awake()
        {
            var inputDeviceList = AudioDeviceDriver.InputDeviceList.Select(device => device.DeviceName).ToList();

            _microphoneControlView.UpdateSelectDropdown(inputDeviceList);

            _microphoneControlView.CurrentDevice
            .SkipLatestValueOnSubscribe()
            .Subscribe(device =>
            {
                if (_inputStream != null)
                {
                    _inputStream.OnProcessFrame -= OnProcessFrame;
                }

                _inputStream = AudioDeviceDriver.GetInputDevice(device);
                _loopbackAudioOut.StartOutput(_inputStream.ChannelCount, _inputStream.SampleRate);

                _inputStream.OnProcessFrame += OnProcessFrame;
            })
            .AddTo(this);

            _microphoneControlView.LoopbackIsActive
            .SkipLatestValueOnSubscribe()
            .Subscribe(loopback =>
            {
                if (loopback)
                {
                    _loopbackAudioOut.StartOutput(_inputStream.ChannelCount, _inputStream.SampleRate);
                }
                else
                {
                    _loopbackAudioOut.StopOutput();
                }
            })
            .AddTo(this);
        }