public override void Update(Action<short[]> ReadStream)
{
ReadStream(Buffer);
fixed (short* BufferPtr = &Buffer[0])
{
if (Alsa.snd_pcm_state(playback_handle) == Alsa._snd_pcm_state.SND_PCM_STATE_XRUN)
{
Alsa.snd_pcm_prepare(playback_handle);
}
Alsa.snd_pcm_writei(playback_handle, BufferPtr, Buffer.Length / channels);
}
}