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