Freeze exemption for PA integration into Phonon

Colin Guthrie gmane at colin.guthr.ie
Fri Nov 20 12:08:43 GMT 2009


'Twas brillig, and Will Stephenson at 19/11/09 18:15 did gyre and gimble:
> On Wednesday 18 November 2009 18:54:23 Colin Guthrie wrote:
>>>> And if Phonon is built with PA integration, but the PA daemon
>>>> isn't available for some reason (it crashed, or isn't installed, for
>>>> example), it degrades gracefully.
>> Yup, basically I try a connection at startup, if it fails I just degrade
>> to the same mode as if PA is not there at all.
> 
> What about if PA restarts?  Do connections come back gracefully?

At present no. If PA restarts things are not that graceful. I did think 
about this, but the problems are fairly complicated:
  1. I have to handle the control connection reconnect (this is within 
my control, so not a major problem).
  2. I have to rely on the phonon backend itself doing the reconnect 
too. This bit is more problematic and leads to some pretty awkward 
problems (e.g. matching up our phonon stream to the pulse stream for 
moving device purposes etc).
  3. Currently the support module for phonon/kde is loaded into PA at 
login. If pulse restarts, the autospawing capabilites will just start 
the server, not load the kde support module, so the PA support will be 
degraded - it'll still work but instead of seeing all devices in the 
multimedia settings you just see a single "PulseAudio" virtual device 
which you obviously can't reorder etc.


So with these problems in mind, I'd rather just focus on making sure PA 
doesn't crash in the first place. It's pretty stable for me. I've 
disabled autospawning (it's easier for debugging/hacking that way) so I 
know whenever it crashes... I can't actually remember when it last did 
that by itself so this is not likely not a massive problem, but it would 
be nice to solve it properly at some point.

Cheers

Col

-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
   Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
   Mandriva Linux Contributor [http://www.mandriva.com/]
   PulseAudio Hacker [http://www.pulseaudio.org/]
   Trac Hacker [http://trac.edgewall.org/]





More information about the kde-core-devel mailing list