Esempio n. 1
0
 public void CanCreateWaveInDevice()
 {
     using (WaveIn waveIn = new WaveIn())
     {
         waveIn.Initialize();
         waveIn.Start();
     }
 }
Esempio n. 2
0
        public void CanCreateWaveInDevice()
        {
#pragma warning disable 612
            using (WaveIn waveIn = new WaveIn())
#pragma warning restore 612
            {
                waveIn.Initialize();
                waveIn.Start();
            }
        }
Esempio n. 3
0
        public bool Initialize()
        {
            _currentWaveInDevice = WaveInDevice.DefaultDevice;
            _waveIn = new WaveIn(new WaveFormat(_sampleRate, BitPerSample, _channels))
            {
                Device = _currentWaveInDevice
            };
            _waveIn.Initialize();

            if (_encoderNeedDispose)
            {
                _encoderNeedDispose = false;
                aac_enc.EncoderRelease();
            }

            if (!aac_enc.EncoderInit(_sampleRate, _channels, _bitRate))
            {
                return(false);
            }

            _encoderNeedDispose = true;

            return(true);
        }
Esempio n. 4
0
        private void btnStart_Click(object sender, EventArgs e)
        {
            if (deviceslist.SelectedItems.Count <= 0)
            {
                return;
            }

            SaveFileDialog sfd = new SaveFileDialog();

            sfd.Filter   = "WAV (*.wav)|*.wav";
            sfd.Title    = "Speichern";
            sfd.FileName = String.Empty;
            if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                _waveIn        = new WaveInEvent(new WaveFormat(44100, 16, _selectedDevice.Channels));
                _waveIn.Device = deviceslist.SelectedItems[0].Index;

                _waveIn.Initialize();
                _waveIn.Start();

                var waveInToSource = new SoundInSource(_waveIn);

                _source = waveInToSource;
                var notifyStream = new SingleBlockNotificationStream(_source);
                notifyStream.SingleBlockRead += OnNotifyStream_SingleBlockRead;

                _source       = notifyStream.ToWaveSource(16);
                _writerBuffer = new byte[_source.WaveFormat.BytesPerSecond];

                _writer = new WaveWriter(File.OpenWrite(sfd.FileName), _source.WaveFormat);
                waveInToSource.DataAvailable += OnNewData;

                btnStart.Enabled = false;
                btnStop.Enabled  = true;
            }
        }