Example #1
0
    public static void PlayNote(string note)
    {
        if (_waveOut == null)
        {
            var sineWaveProvider = new SineWaveProvider32();
            sineWaveProvider.SetWaveFormat(16000, 1); // 16kHz mono
            sineWaveProvider.Frequency = 1000;
            sineWaveProvider.Amplitude = 0.25f;
            _waveOut = new WaveOut();
            _waveOut.Init(sineWaveProvider);
            _waveOut.Play();

            StopTimer();

            _timer          = new Timer();
            _timer.Elapsed += TimerElapsed;
            _timer.Interval = 20000;
            _timer.Start();
        }
        else
        {
            _waveOut.Stop();
            _waveOut.Dispose();
            _waveOut = null;

            StopTimer();
        }
    }
        public void PlayNote(Note note)
        {
            SineWaveProvider32 newWave = new SineWaveProvider32();

            newWave.SetWaveFormat(44100, 2);
            newWave.Amplitude = volume;
            newWave.Frequency = (float)note.GetFrequencyInHz();
            SoundHelper.PlaySound(newWave);
        }
Example #3
0
        public MainWindow()
        {
            InitializeComponent();
            _WaveProvider = new SineWaveProvider32();
            _WaveProvider.SetWaveFormat(16000, 1);
            _WaveProvider.Amplitude = 0.25f;
            _WaveOut = new DirectSoundOut();
            _WaveOut.Init(_WaveProvider);

            _MidiOut = new MidiOut(0);
        }
Example #4
0
        // инициализация воспроизведения звука, так же его воспроизведение
        // суммирование массива амплитуд данной частоты с общей
        private async void PlayWithOneFreequency(int freequency)
        {
            var sineWaveProvider = new SineWaveProvider32(freequency); // частота воспроизведения

            sineWaveProvider.SetWaveFormat(8000, 1);                   // частота дискретизации, число каналов( от второго параметра зависит скорость воспроизведения)
            var waveOut = new WaveOut();

            waveOut.Init(sineWaveProvider);
            var masofAmplitude = sineWaveProvider.ReadAsync(amplitude.sizeMas); // можно и обычным приведением, но хз

            amplitude.summing(masofAmplitude);

            await Task.Run(() => PlayAudio(waveOut));
        }
Example #5
0
 private void Form1_Load(object sender, EventArgs e)
 {
     waveOne          = new Wave(Wave.Sine);
     sineWaveProvider = new SineWaveProvider32();
 }