Dedicated notification sink?
Georg Chini
georg at chini.tk
Sat May 4 10:07:55 UTC 2024
Hi Mark,
there are module-role-cork and module-role-ducking which provide the
kind of functionality
you are looking for. If you have a stream with "role1" assigned, which
should duck all other
streams, the command would be something like
pactl load-module module-role-ducking trigger_roles="role1"
ducking_roles="any_role" global=1
The grouping of roles works for both, module-role-cork and
module-role-ducking even though
it is only mentioned in the description of module-role-ducking.
(pacmd describe-module module-role-ducking) You can use the special
roles "any_role" to specify
all streams and "no_role" for those streams that do not have a role
assigned.
The main problem is to make sure that your (trigger) streams always have
the correct role,
so you have to set the media.role property somehow.
Regards
Georg
On 04.05.24 10:27, Mark Gaiser wrote:
> Hi,
>
> Let me first try to describe what I'm trying to do. Perhaps there is
> an existing solution for this already that I haven't found yet.
>
> This is mostly for home automation purposes. Imagine you have a DIY
> speaker with a raspberry pi. You use it to play music on. Perhaps even
> with a higher quality DAC. The gist is that you have a linux-based
> speaker that uses pulseaudio for playback.
>
> Now you want to send an audio notification. What you would want to do is:
> - Whatever is currently playing, lower it's volume
> - Play the notification at a louder volume
> - Resume to whatever was playing at whatever volume it was
>
> Are there any ways that one can achieve the above with the current
> pulseaudio version?
>
> The following is a brainstorm! What I'm thinking is if it would be
> possible to make a pulseaudio module that registers its own dedicated
> sink. When audio is being sent to that sink then it would lower the
> volume on the other sinks. When no more audio is sent the other sinks
> get restored to whatever their level was. Audio played on this
> "notification sink" is boosted a little. All these options should be
> configurable. Would such a plugin even be possible in pulseaudio? I
> guess I'm asking if a plugin has the capabilities to modify the output
> of other sinks?
>
> I'm looking forward to what you folks think.
> Hopefully it's all already possible :) That sure is a million times
> easier!
>
> Best regards,
> Mark
>
More information about the pulseaudio-discuss
mailing list