On Mon, Sep 7, 2009 at 4:53 AM, Clemens Ladisch<clemens(a)ladisch.de> wrote:
Paul Davis wrote:
if you use read/write, you deliver/receive the
data to/from the kernel
at the time of calling. but there is then an extra buffer inside the
ALSA midlevel driver code that holds the data till it is needed (in
both directions).
There is no extra buffer for these functions; snd_pcm_write/read* copy
the data to/from the same hardware buffer that would be used by the mmap
functions.
snd_pcm_write() and snd_pcm_read(), IIRC, allow reads&writes of chunks
of data that are not period-sized. am i misremembering?
do you have an alternate explanation for louis' timing observations? error?