On Sun, 22 Nov 2020 17:03:35 +0100, Eric Buddington wrote: > > I am recording from multiple (cheap USB) mics, and trying to > synchronize them. I am assuming that there will be a common minimum > latency (reflecting an uncontested USB bus), with occasional spikes up > - but not down. > > In my loop, I am calling snd_pcm_mmap_begin(), snd_pcm_htimestamp(), > and snd__mmap_commit() in that order. > > My question is about the 'avail' value returned from htimestamp. It is > documented as "Number of available frames when timestamp was grabbed". > Does this mean frames since the last frame consumed with > _mmap_commit()? It's the value that is equivalent with the one in snd_pcm_status and co: the available frames in the ring buffer. > Is there a possibility of there being no timestamp, or one where > 'avail' refers to some older state? It was a quite long time ago that I tested it, but I don't think there has been any significant changes in this regard. I guess Pierre can have better insight. Takashi