void OnAudioFilterRead(float[] data, int channels) { if (_synth.IsReadyToPlay && _synth.IsPlaying) { float[] samples = _synth.GetSamples(); for (int i = 0, j = 0; i < data.Length; i += channels, j++) { data[i] = samples[j]; if (channels == 2) { data[i + 1] = data[i]; } } } }