Exemplo n.º 1
0
        private void ConfigureAudioDevice()
        {
            var waveProvider = new WaveProvider(console.AudioBuffer);

            audioDevice = new WaveOut();
            audioDevice.Init(waveProvider);
        }
Exemplo n.º 2
0
        public void Close()
        {
            m_waveOutPlayer.PlaybackStopped -= WaveOut_PlaybackStopped;

            InSample  = null;
            OutSample = null;

            if (m_waveOutPlayer != null)
            {
                m_waveOutPlayer.Dispose();
                m_waveOutPlayer = null;
            }

            if (m_waveProvider != null)
            {
                m_waveProvider = null;
            }

            IsOpen = false;
        }
Exemplo n.º 3
0
        public void Open()
        {
            if (InSample == null)
            {
                throw new InvalidOperationException("In Sample is not set.");
            }
            if (DataRequired == null)
            {
                throw new InvalidOperationException("DataRequired event is not subscribed to.");
            }

            Format outFormat = new Format(
                InSample.SampleRate,
                4,
                InSample.Channels);

            OutSample = null;
            OutFormat = outFormat;

            m_waveProvider = new WaveProvider(DataRequired, this);

            m_waveOutPlayer = new WaveOut();
            m_waveOutPlayer.NumberOfBuffers  = 2;
            m_waveOutPlayer.DesiredLatency   = m_desiredLatencyInMs;
            m_waveOutPlayer.PlaybackStopped += WaveOut_PlaybackStopped;

            Latency = m_desiredLatencyInMs *
                      m_bytesPerSample *
                      OutFormat.Channels *
                      OutFormat.SampleRate /
                      1000;

            m_waveOutPlayer.Init(m_waveProvider);

            IsOpen = true;
        }
Exemplo n.º 4
0
 public void RemoveAudioStream(IWaveProvider provider)
 {
     WaveProvider.RemoveInputStream(provider);
 }
Exemplo n.º 5
0
 public void AddAudioStream(IWaveProvider provider)
 {
     WaveProvider.AddInputStream(provider);
 }
Exemplo n.º 6
0
 public WaveSinkFilter()
 {
     m_waveOutPlayer = null;
     m_waveProvider  = null;
 }