Draft: Add audio-group utils to group audio streams
This MR adds an audio-group-utils.lua
utility script that groups audio stream nodes that have a common ancestor process cmdline, so that applications can easily change the volume of a set of audio nodes that are part of the same group, and also redirect them to a different device all at once.
The option can be enabled for specific streams by setting the session.audio-group.ancestor-cmdline
property under the stream.rules
section of the configuration. For example, this will group all pulseaudio output streams that have the bash
cmdline ancestor:
stream.rules = [
{
matches = [
{
media.class = "Stream/Output/Audio"
client.api = "pipewire-pulse"
}
]
actions = {
update-props = {
session.audio-group.ancestor-cmdline = "bash"
}
}
}
]
Edited by Julian Bouzas