[pulseaudio-discuss] Accessing audio as root

Ng Oon-Ee ngoonee at gmail.com
Sun Jan 3 05:26:15 PST 2010


On Sun, 2010-01-03 at 07:41 -0500, Bill Cox wrote:
> Hi, Colin.  I disagree that speech-dispatcher and speechd-up are
> broken and need to be fixed.  speechd-up is a root daemon attached to
> the /dev/softsynth device.  I see no utility in having multiple copies
> of it.  Speech-dispatcher opens an IP port to act as a speech server
> over the network.  It's kind of a silly feature, but why should I
> second-guess the speech-dispatchers developers and break it?

> IMO, what's broken is PA.  I can't in Ubuntu get two copies running on
> the same machine without borking the sound system.  If PA can't even
> do it, why should I mangle all the accessibility apps out there by
> making them try to follow PA's overly complex model?  This has to be a
> screaming violation of the KISS rule.  The sound system is a bit
> complex.  Fine.  To use it, you need to make all your apps complex?
> Really?
> 
> The complexity has to be contained.  It can't keep leaking out of PA
> into the rest of the system, making it more and more unstable as it
> goes.
> 
> Bill

IMO from what I've read so far, PA's model is "one instance per user".
Whether or not its 'overly complex' depends on point-of-view, since this
is the same model used by (for example) X11 and jackd. I believe that,
in a multi-user system, user-space apps and services should be "one
instance per user". Of course, I can see how this could be 'overly
complex' from a developmental point of view, but its really a matter of
the way you view your system.

On the other hand, your app (speechd-up) is by its very nature a "one
instance per system" app, as all apps which run as root are (should
be?). Not knowing much about how it works, I can just state my belief
that it won't be easy to change.

So, in my simplistic and user-centric point-of-view, I wonder if
speechd-up accepts audio INPUTS? Perhaps it could act as a pulseaudio
sink, with the appropriate modules, of course. It starts before the user
logs in and only exits after the user has logged out, of course.

The reasoning behind my proposal is simply that root is system-wide by
definition (in my understanding), hence why all Colin's proposals have
involved speechd-up running as a particular user while all your replies
have mentioned root access to pulse....




More information about the pulseaudio-discuss mailing list