summaryrefslogtreecommitdiffstats
path: root/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf.in
diff options
context:
space:
mode:
Diffstat (limited to 'meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf.in')
-rw-r--r--meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf.in55
1 files changed, 55 insertions, 0 deletions
diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf.in b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf.in
new file mode 100644
index 00000000..76a57419
--- /dev/null
+++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf.in
@@ -0,0 +1,55 @@
+# Basic pipewire integration - do not remove
+load-module C libwireplumber-module-pipewire
+
+# Grants access to security confined clients
+load-module C libwireplumber-module-client-permissions
+
+# Endpoint implementation for standard audio devices
+# using software conversions, mixing and volume controls
+load-module C libwireplumber-module-pw-audio-softdsp-endpoint
+
+# Endpoint that provides high-level volume controls for the AGL mixer
+# The streams specified here are the ones that will appear in the mixer.
+# They must match the stream names in the alsa-udev module,
+# except for "Master", which is treated specially.
+load-module C libwireplumber-module-mixer {
+ "streams": <["Master", "Multimedia", "Speech-Low", "Custom-Low",
+ "Navigation", "Speech-High", "Custom-High",
+ "Communication", "Emergency"]>
+}
+
+# Monitors the ALSA devices that are discovered via udev
+# and creates softdsp-endopints for each one of them
+# The streams specified here are the ones that will be available for linking
+# clients. Currently, they are matched against the client's role string.
+load-module C libwireplumber-module-pw-alsa-udev {
+ "streams": <["Multimedia", "Speech-Low", "Custom-Low",
+ "Navigation", "Speech-High", "Custom-High",
+ "Communication", "Emergency"]>
+}
+
+# Monitors the Audio clients that are discovered via pipewire
+# and creates simple-endpoints for each one of them
+load-module C libwireplumber-module-pw-audio-client
+
+# Implements linking clients to devices and maintains
+# information about the devices to be used.
+# Notes:
+# - Devices must be specified in hw:X,Y format, where X and Y are integers.
+# Things like hw:Intel,0 or paths are not understood.
+# - Roles and priorities can be arbitrary strings and arbitrary numbers
+# - Roles are matched against the stream names specified in the modules above.
+load-module C libwireplumber-module-simple-policy {
+ "default-playback-device": <"PLAYBACK">,
+ "default-capture-device": <"CAPTURE">,
+ "role-priorities": <{
+ "Multimedia": 1,
+ "Speech-Low": 2,
+ "Custom-Low": 3,
+ "Navigation": 5,
+ "Speech-High:": 7,
+ "Custom-High": 8,
+ "Communication": 9,
+ "Emergency": 10
+ }>
+}