allow-passthrough: Add module to allow passthrough streams always go through

For various use-cases a passthrough stream should have priority over all
other streams and get exclusive access to the sink regardless of whether
any other streams are playing.

An example use-case is ensuring Kodi can successfully start video
playback (with passthrough) even if an external notification sound
happened to be playing at the same time.

Signed-off-by: Arun Raghavan <git@arunraghavan.net>
This commit is contained in:
Guillaume Desmottes 2016-03-18 15:28:12 +01:00 committed by Arun Raghavan
parent 7ac5390042
commit 14804ba1ca
2 changed files with 337 additions and 2 deletions

View file

@ -1205,7 +1205,8 @@ modlibexec_LTLIBRARIES += \
module-switch-on-port-available.la \
module-filter-apply.la \
module-filter-heuristics.la \
module-role-ducking.la
module-role-ducking.la \
module-allow-passthrough.la
if HAVE_ESOUND
modlibexec_LTLIBRARIES += \
@ -1548,7 +1549,8 @@ SYMDEF_FILES = \
module-switch-on-connect-symdef.h \
module-switch-on-port-available-symdef.h \
module-filter-apply-symdef.h \
module-filter-heuristics-symdef.h
module-filter-heuristics-symdef.h \
module-allow-passthrough-symdef.h
if HAVE_ESOUND
SYMDEF_FILES += \
@ -2207,6 +2209,12 @@ module_rygel_media_server_la_LDFLAGS = $(MODULE_LDFLAGS)
module_rygel_media_server_la_LIBADD = $(MODULE_LIBADD) $(DBUS_LIBS) libprotocol-http.la
module_rygel_media_server_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
# Allow passthrough module
module_allow_passthrough_la_SOURCES = modules/module-allow-passthrough.c
module_allow_passthrough_la_LDFLAGS = $(MODULE_LDFLAGS)
module_allow_passthrough_la_LIBADD = $(MODULE_LIBADD)
module_allow_passthrough_la_CFLAGS = $(AM_CFLAGS)
###################################
# Some minor stuff #
###################################