[alsa-devel] [pulseaudio-discuss] alsa pulse bugs

tom at dbservice.com tom at dbservice.com
Mon May 5 12:22:10 CEST 2008


Quoting Colin Guthrie <gmane at colin.guthr.ie>:
> Actually just having a very quick glance at the Alsa API docs, it
> doesn't mention that this value should be 0 if there are no samples to play:
>
> 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?

If Wine uses a wrong assumption, then please clarify the function description.

> 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.

tom





More information about the Alsa-devel mailing list