https://bugs.kde.org/show_bug.cgi?id=507447

--- Comment #2 from [email protected] ---
@Kacper Kondracki

I see. This explains a few things.
So when deciding what device to act on, plasma-pa prefers RUNNING over IDLE
devices, and IDLE over any other state.

I used `pactl list sinks` to display the states of the available sinks under
various conditions:

With nothing else outputting audio:
    With the Volume Popup closed, both the virtual as well as the physical
device show `State: SUSPENDED`.
    -> plasma-pa does not find devices in a running state nor idle state, so
chooses the default.
    -> The volume hotkeys control the virtual sink which is chosen as the
default device.

    With the Volume Popup open, the virtual sink shows `State: IDLE`, but the
physical one shows `State: RUNNING`.
    -> plasma-pa sees the running physical device and chooses picks that one.
    -> The volume hotkeys control the physical sink, preferring RUNNING over
IDLE, overriding the default device.

With audio being played back: 
    Independent of the state of the Volume Popup, both the virtual as well as
the physical device show `State: RUNNING`.
    -> plasma-pa sees the both the running virtual and physical device, but
since the virtual one is additionally the default, it picks that one.
    -> The volume hotkeys control the virtual sink again.

So for some reason, showing the Audio Volume Widget (with no audio playback
active) changes the states of the virtual device to go from suspended to idle,
but for the physical device, to go from supended to running. And since
"running" confers a higher priority, the hotkeys then regulate the physical
device. That the mere showing of the Widget changes the state of the devices is
a bit strange. Bug? Or side effect of something necessary? The unpredictability
of what the keys control from moment to moment is an issue, though.

For my own purposes, I've decided that what I want the volume hotkeys to affect
is indeed the actual physical outputs at the end of the chain, not some
inbetween virtual equalizer that's only set the default sink for applications
to send their audio streams to. I'll see if I can achieve that through some
scripting, circumenting the default volume hotkey function.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to