[pulseaudio-discuss] [PATCH 0/2] New module, allow-passthrough

Sjoerd Simons sjoerd.simons at collabora.co.uk
Mon May 19 06:59:24 PDT 2014


XBMC 13 has been release recently with a nice new revamped pulseaudio backend,
allowing it to properly use passthrough with pulseaudio.. However one issue
with passthrough remains, it absolutely needs exclusive access to the sink.

The default policy in pulseaudio is to only allow exclusive access if nothing
else is currently using the sink. The following patches add a module that
essentially turns that up-side-down, if a new passthrough stream comes in
everything else is moved out of the way. This policy is more suitable then the
default in case passthrough streams typically correspond to higher priority
audio, e.g. movie audio rather then events.

Some point for discussion in this patchset, first of all we choose to use dummy
(null sink) to redirect active streams to rather then corking. In my personal
experience a lot of player application react badly to corking, while
redirecting is mostly transparent to the applications.

Futhermore a bit of pulseaudio core policy has to be duplicate by this module
as there is no hook in place which is guaranteed to run after the sink
selection & format negotiation has been done.

Maybe as a final note, for ease of development the module recognizes the
media.role "fake-passthrough" and handles it like it would a real passthrough
stream. (Guillaume doesn't even have a passthrough capable amplifier and mine
is hooked into my HTPC setup rather then in my home office, so not very
convenient for testing)


Guillaume Desmottes (1):
  allow-passthrough: Add module to allow passthrough streams always go
    through

Sjoerd Simons (1):
  allow-passthrough: Setup sink & formats if not set yet

 src/Makefile.am                        |  12 +-
 src/modules/module-allow-passthrough.c | 292 +++++++++++++++++++++++++++++++++
 2 files changed, 302 insertions(+), 2 deletions(-)
 create mode 100644 src/modules/module-allow-passthrough.c

-- 
2.0.0.rc2



More information about the pulseaudio-discuss mailing list