On Mon, Apr 28, 2008 at 09:53:05AM +0100, Colin Guthrie wrote: > Sjoerd Simons wrote: > > The attached patch extends the alsa pulse plugin set with a alsa > > configuration hook. Allowing one to specify some configuration parameters > > that only come into effect when pulseaudio is running. > > I was waiting with baited breath after your chat on IRC as to what your > solution would actually be! > > I like it! > > I think the overhead at initialisation is probably OK, although I guess > it depends on how an application works - e.g. if it constant opens and > closes alsa connections then does this overhead mount up? If not then > this looks like a good solution. It unfortunately does add up. Otoh apps shouldn't open and close the audio device all the time :) And ideally should use pulseaudio directly. If i look at my personal desktop the only thing i actually still use that does uses pulse through alsa is VLC.. Which will have a pulse output option in the next release. If people are getting hit by the overhead they can disable the check and configure things manually. I think it's not too much of an overhead, but that's something only practise can show when people start using it in different situations. My feeling is that if your in a situation where the overhead gets noticible then your probably skilled enough to change the configuration :) > That said Lennart has said in the past that he didn't like the idea of > Alsa automatically falling back to h/w access if pulse isn't > responding. (this was in reference to tweaking the alsa plugin itself, > rather than this approach which is slightly different conceptually, > albeit with the same end goal). I think his comment at the time was "it > masks configuration problems". Resource-wise you could theoretically fallback in nicer ways. But that requires a lot more alsa knowledge then i have. The real issue is that there is no good way to decide between, ``this user doesn't use pulse'' and ``this user wants to use pulse but some problem occured'' What i'm currently unsure of is that the patch only declares pulse as running if it succeeds in getting a full connection. Maybe, to be sure we don't hide certain problems it should also declare pulse as running even if say authentication fails. Sjoerd -- Round Numbers are always false. -- Samuel Johnson