[alsa-devel] Frame-based access (via mmap) and cross-device synchronisation

Clemens Ladisch clemens at ladisch.de
Tue Jul 21 15:49:25 CEST 2009

Metathronius Galabant wrote:
> At any given time x0, x1, ... xn I'd like to take some kind of
> "snapshot" of both devices, ask them "how many frame do you have?".
> This MUST NOT be restricted to the period, but it should be like
> device1 has 80 frames, device2 only has 78 frames.

Call snd_pcm_avail().  The granlarity of its return value is device
specific; e.g., chips like Emu10k1 or DS-1 move data in blocks of 256
or 512 samples, and USB uses 1-ms frames.  You are not guaranteed to
get a result that is more recent than the last period boundary,
although most devices can do better.

Best regards,

More information about the Alsa-devel mailing list