tom at dbservice.com wrote: >> http://www.alsa-project.org/alsa-doc/alsa-lib/group___p_c_m.html#ga0d9e14a4be65209eb549e48a9f07302 >> >> Closest it says is: "It's positive and less than buffer size in normal >> situation". >> >> So perhaps this is an invalid assumption at the wine side? > > However this part: > > Delay is distance between current application frame position and sound > frame position. > > suggests that it indeed can be zero. Or why would a soundcard have a > gap between the read and write positions if it has played everything? Indeed. I agree. However, for me this is something that should not be in high level documentation, that should be an internal thing (i.e. it's a detail of the implementation). It's perfectly true of hardware devices (no doubt the context when the docs were written) but perhaps this should not be true of non-h/w or ioplug based "devices"? Someone who vaguely understands the ALSA stuff should have a better insight on this to comment :p >> Is there perhaps a more appropriate API call they can use to do whatever >> test they are doing? > > What Wine needs to know, is whether a particular sample has already > been played or not. It does 'bytes_written - delay_in_bytes' to find > out how much of the written data the soundcard has already played. If > there is a better test for it, please explain. I've no idea, I'm just throwing up ideas/suggestions/opinions... there is little technical background from my comments, just trying to raise some points so people more familiar than I can comment :) Take care Col