[Openal] OpenAL Soft 1.10 will be sooner than expected

Chris Robinson chris.kcat at gmail.com
Sat Oct 31 18:22:59 PDT 2009


An update on things.

On Saturday 31 October 2009 1:02:04 pm Ludwig Nussel wrote:
> - the locking change moved the call to
>   ppa_stream_set_write_callback() downwards. I guess it needs to be
>   done before ppa_stream_connect_playback() though as pulseaudio
>   doesn't call the callback otherwise. However, with that locking
>   change openal runs in a deadlock if
>   ppa_stream_set_write_callback() is called earlier. So the locking
>   change was either incomplete or wrong :-). Which in turn brings
>   back the question whether the behavior change in pulseaudio
>   was correct. I've reverted it locally and ioquake3 works fine now.

I reverted the locking changes, but I redid it in a way that should be better 
compatible with newer, unpatched Pulse libs.

> - The change to stream_write_callback() was wrong, it didn't pass
>   'len' to ppa_stream_write() but rather data->attr.minreq only. I
>   really don't know the first thing about that stuff but I guess
>   pulseaudio didn't play because it waited for more data.

I changed the callback to do all full-sized updates given the amount of data 
PulseAudio wants. This seemed to help fix the stalls I get during playback.

Both ioquake3 and Chromium are working with the PulseAudio backend for me, 
now.


More information about the Openal mailing list