[pulseaudio-discuss] Sending audio from source to multiple sinks dynamically
Colin Guthrie
gmane at colin.guthr.ie
Wed Jun 17 11:46:54 PDT 2009
'Twas brillig, and Timothy J Massey at 17/06/09 19:00 did gyre and gimble:
>>> Is there a way to communicate with modules once they're loaded? Such
> as
>>> from the PA command line?
>> Not really. A module would have to extend the protocol to do this kind
>> of stuff.
>
> I'm surprised by that: that there isn't a way to pass them a message from
> the PA command line... But so be it: protocol extensions are well beyond
> what I'm looking for.
Well it's complicated by the fact that PA is not necessarily running
locally. The "client" side may be speaking to a PA server running on a
separate machine. Thus whatever input you give it, it has to go over the
wire. It's not as hard as it sounds tho'.
>> It probably wouldn't take too much to write such a module and avoids
>> complicated timing problems of connecting sources to sinks.
>
> It's too bad that modules can't accept messages from e.g. the PA command
> line. Because module-combine already does all of this. It just can't
> change its list of slaves dynamically...
Yeah, I'm not sure ultimately if it makes more sense to reconfigure an
existing module-combine instance or create a whole new one, move the
sink-inputs and then trash the old one. The end result is likely the same.
> Another way of doing this was given to me by Matthew Patterson. He used
> module-combine to create a single virtual sink for each sink-input (i.e.
> each instance of MPD), and included *each* physical sink in that virtual
> sink. Then, to control what was actually playing through each physical
> sink, he would simply mute all sink-inputs for that sink, and unmute the
> one that the user selected. The nice thing is that this should not glitch
> the audio for any sink that's not being changed.
Indeed, it's a nice approach, but not quite as dynamic as it probably
could be. Still, right now, this is a pretty nifty approach :)
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 pulseaudio-discuss
mailing list