Notable Changes to Jaunty's PulseAudio

Dan Chen crimsunkg at yahoo.com
Fri Feb 20 07:50:32 GMT 2009


Hi folks,

The latest PulseAudio upload in jaunty actually effects the
autospawn change intended in the previous upload. I anticipate
an outpouring of Launchpad activity over it.

My previous e-mail was woefully lacking in rationale, so I'll
address both the enabling of autospawn and the disabling of
glitch-free.

Firstly, autospawn. There are two significant reasons for
making such a change, and neither one of them is "force
PulseAudio use on everyone". As nifty as that conspiracy
theory would be, the real reasons are:

1) Expose races between PA unsuspending the sink(s) and some
   native ALSA (or OSS-only) app grabbing hw: (or /dev/dsp);
2) Test the pulse alsa-lib plugin for buffering problems (as
   exhibited by Firefox 3.2 testing).

In short, your audio will very likely break after the upgrade
completes (to 0.9.14-0ubuntu7). GStreamer and xine-lib apps
will appear to hang, but stopping them and resuming play will
be the easier way to work around the hang.

The culprit actually lies in poor interaction between the
driver (in linux) and the library (in alsa-lib). git HEAD of
PulseAudio contains some workarounds for it, and Luke's PPA[0]
will be tracking those 0.9.15 test releases (which require
significant upgrades in various layers of the audio stack and
likely are not suitable for jaunty).

Secondly, glitch-free. I've identified where glitch-free is
breaking for many users, but there is no one setting that can
magically make the audio aberrations "go away". Because 0.9.14
is fairly different from 0.9.15, I have a separate branch[1]
for queueing changes for reenabling glitch-free.

The objective for shipping jaunty is have both autospawn and
glitch-free enabled, but the testing period will help determine
which of those options is feasible in time for release. Thank
you for helping test-drive jaunty!


[0] https://launchpad.net/~themuso/+archive/ppa
[1] https://code.launchpad.net/~crimsun/pulseaudio/timing


      



More information about the ubuntu-devel mailing list