[pulseaudio-discuss] Loading module-jack-sink multiple times

Juho Yliuntinen vaevalex at gmail.com
Tue Jul 17 15:39:40 PDT 2012


Hello, I'm fresh to this list and don't know the protocols for suggesting
changes, but I'm proposing the following change to module-jack-sink.c, or
in the least for more people to test if the change causes problems with
threading or otherwise. From what I could understand how the code works it
should not since the module creates individual pa_asyncmsgq and new thread
with every load to communicate with jack, etc..

The change is to simply make the module
PA_MODULE_LOAD_ONCE(FALSE);

I have tested patching and building the sink module and used it to create 3
sinks that are correctly registered as jack clients, connected several
streams to PA and shuffled them between the sinks without crashes, hangs or
interruptions. In every configuration the streams were beautifully mixed
and relayed to jack via their current sinks and could be routed onward
without problem. I have also tested loading the module multiple times
without arguments, and PA seems to name them differently automatically.
Unloading the module of a sink that has streams connected, switched the
streams to default sink without interruption.

With the module-jack-source I make a very blunt assumption that it works
similarly as the sink, but I am not able to test it properly with my setup
at the moment, so I can not in my right mind to propose the change to it as
is.

Basically, in light of what I described I don't see why there should be the
"load once" restriction on the sink module, but I leave the ball to more
experienced PA people to evaluate this, and whether this change should make
it into deployment. Admittedly it's not the most common use case to connect
multiple sinks to jack, but can be useful for combined audio work and
advanced desktop usage scenarios to avoid some far uglier configurations
for routing audio from a single pulseaudio aware application to targets in
the jack world.

Juho-Petteri Yliuntinen
vaev at Freenode
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20120718/783d8b41/attachment.html>


More information about the pulseaudio-discuss mailing list