[pulseaudio-discuss] Using module-combine-sink with intermittent devices

Arun Raghavan arun at accosted.net
Mon Jan 18 18:25:54 PST 2016

On 18 January 2016 at 03:20, Matt Feifarek <matt.feifarek at gmail.com> wrote:
> Hi there.
> Thanks for the fantastic PA; I'm enjoying its elegance and power, and have
> been for years. I've been trying to search the web and the mailing list for
> answers to my questions, but the docs are few and the mailing list is hard
> to search.
> ...
> Lately, I'm setting up a sort of a house-wide hifi setup. I'm driving
> various audio cables from a HEADLESS computer. I'm having a couple of
> challenges, and some questions:
> 1. In this situation (no actual users, headless) is it "ok" to use system
> mode? I've done lots of work-arounds to get PA to run from an account (the
> one for mpd). The docs are quite strenuous that it's basically never ok to
> use system mode, but seems like I'm pretty much in system land. No?

This should be okay. I thought systemd has (or was going to have) a
mechanism for per-user services to come up at boot, but I might've
been imagining this.

> 2. I want to use module-combine-sink to play through several sound sinks at
> the same time. It works, but things break down when one of the sinks
> disappears, which it does because it's a USB interface to a DAC in a
> receiver.

Breaks down?

> 3. module-combine seems to suffer with the idle detection, should I just
> turn that off?

Suffer in what way?

> 4. What's the difference between adding a "card" and adding a "sink"? Why
> would one use card?

A card is a representation of the physical device that provides audio
(so the sound card, for example). The theory is that a card provides a
profile for each configuration it supports, and a sink for each
playback stream it supports when a given profile is activated.

> I know that you can configure PA to move streams to newly appearing sinks,
> but I don't know how to reconfigure an existing sink (combined sink). I
> looked at updating property lists, but I don't think that's what it's for.
> And since there's no "script language" per-se, I have a similar problem at
> start-up: I can't refer to a missing sink when I want to declare the combine
> module... and if I wrap it in .nofail tags, it mostly works, but then I have
> to manually remove the module and re-init later when the USB device comes
> online.
> In short, I have two run-states: one with one soundcard, one with two; I
> want to support both transparently, playing the same source streams, without
> having to log into the server and run pacmd. Is this possible?

Are there more sound cards on this system that you do not want added
to the combine sink? If not, when you don't specify the "slaves"
argument to the module, it will automatically combine in all new

-- Arun

More information about the pulseaudio-discuss mailing list