[vbox-dev] PulseAudio support rewrite [Patch]

Frank Mehnert Frank.Mehnert at Sun.COM
Tue Jan 5 06:35:40 PST 2010


On Tuesday 05 January 2010, Arthur Taylor wrote:
> Thanks for the feedback! The code style change was a force of habit
> thing, no problems. Any thoughts on the variable names?

yes, they are covered by the coding style as well :) I will fix
the names (e.g. prefix 'p' for pointers).

> The PA_STREAM_ADJUST_LATENCY stream flag can be selectively enabled
> for recent versions by using the PA_API_VERSION define.
> PA_STREAM_ADJUST_LATENCY isn't strictly required, without the
> functionality there will be an extra latency, but things should still
> work fine. If a binary is compiled against a newer version of the
> includes it should still work with a pre pulse-0.9.11 userspace as the
> server will just ignore the flag. The functions used are not dependent
> on that version. I had fun with this in another project because ubuntu
> shipped pulse version 0.9.10 for seemingly forever while patches I
> wrote used functions from 0.9.11 and newer.

Yeah, it is probably no problem if the client is newer than the server
but it is a problem that we are loading libpulse.so.0 dynamically which
means that the client library could be older than the headers which were
used to compile the VBox code. In that case, pa_stream_connect_playback() /
pa_stream_connect_record() would return with an error if an unknown flag
is specified. But this isn't a big problem for us as we compile against
the correct libraries / headers on the corresponding Linux distributions.

I have to load that flag out here as I'm on Debian/Lenny. Another problem
I saw is that the playback sound is quite choppy because tlength is set to
a short value (a tenth of the buffer size). If I increase tlength to a half
of the buffer size, the sound is ok. The old code even used 66% of the
buffer size. Is there any reason to use such a small value (a tenth of the
buffer size) for tlength?

Kind regards,

Dr.-Ing. Frank Mehnert

Sitz der Gesellschaft:
Sun Microsystems GmbH, Sonnenallee 1, 85551 Kirchheim-Heimstetten
Amtsgericht München: HRB 161028
Geschäftsführer: Thomas Schröder, Wolfgang Engels, Wolf Frenkel
Vorsitzender des Aufsichtsrates: Martin Häring
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
Url : http://www.virtualbox.org/pipermail/vbox-dev/attachments/20100105/632c79c1/attachment-0001.bin 

More information about the vbox-dev mailing list