http://bugs.winehq.org/show_bug.cgi?id=29585
--- Comment #9 from Andrew Eikum aeikum@codeweavers.com 2012-01-24 11:13:07 CST --- (In reply to comment #7)
Gettings this right sounds more complicated than entering underrun -- until there comes the day where an OSS back-end eats 2s of data like PA.
I'm just afraid that these exist already. My experience with audio hardware so far has been "if the API doesn't explicitly disallow it (or even if it does), some hardware probably does it." I hesitate to make our driver depend on the assumption that buffers are always no more than half a second or so.
On the other hand, I'm running out of other ideas. This wouldn't be all that hard if we could just get an accurate reading of how much data is in the buffer. I'm just going to try adapting the cached buffer size value to my "write no more than 3 periods of data" approach and see what happens.