Bug 504169 - Changing PipeWire node channel volumes on the CLI doesn't update the volume widget
Summary: Changing PipeWire node channel volumes on the CLI doesn't update the volume w...
Status: CONFIRMED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Audio Volume widget (other bugs)
Version First Reported In: 6.3.5
Platform: Arch Linux Linux
: NOR minor
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-05-13 18:02 UTC by Otto
Modified: 2025-05-18 16:56 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Screenshot showing the discrepency between pavucontrol and the volume widget (80.82 KB, image/png)
2025-05-13 18:23 UTC, Otto
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Otto 2025-05-13 18:02:59 UTC
SUMMARY
Changing PipeWire node channel volumes on the CLI doesn't update the volume widget.
If we run pw-cli e 119 Props  we can see that moving the slider changes the channelVolumes property, but not vice versa.

STEPS TO REPRODUCE
1. Play some audio in the background
2. Find the ID of the PipeWire node playing said audio with pw-cli list-objects Node
3. Run pw-cli s <node_id> Props '{ mute: false, channelVolumes: [ 1.0, 1.0 ] }' , substituting node_id with your node ID

OBSERVED RESULT
Open the audio widget and notice how the audio slider for the application hasn't moved even though volume levels have changed

EXPECTED RESULT
The audio slider(s) should have moved to represent the new values. 


SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 6.3.5
KDE Frameworks Version: 6.14.0
Qt Version: 6.9.0
Kernel Version: 6.14.6-arch1-1 (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 5800X 8-Core Processor
Memory: 19.4 GiB of RAM
Graphics Processor: AMD Radeon RX 6600

ADDITIONAL NOTES
I tried wrapping the commands in a code block, but couldn't figure out the text formatting. If someone could point me to how to format the text, I'd be more than happy to do so.
Comment 1 Ismael Asensio 2025-05-13 18:16:32 UTC
I cannot reproduce this behavior with latest master and libpipewire 1.2.7, libwireplumber 0.5.5. 

Can you check if the volume is updated on another audio controller like pavucontrol?
Comment 2 Otto 2025-05-13 18:23:07 UTC
(In reply to Ismael Asensio from comment #1)
> I cannot reproduce this behavior with latest master and libpipewire 1.2.7,
> libwireplumber 0.5.5. 
> 
> Can you check if the volume is updated on another audio controller like
> pavucontrol?

I checked and the issue persists. Playback levels do change, but no changes on the widget. I will try to attach a screenshot.

wireplumber: 0.5.8
libpipewire 1.4.2
Comment 3 Otto 2025-05-13 18:23:57 UTC
Created attachment 181249 [details]
Screenshot showing the discrepency between pavucontrol and the volume widget
Comment 4 Otto 2025-05-13 18:28:03 UTC
Oops, seems like I misunderstood. Pavucontrol does show changes made with pw-cli, but the changes in pavucontrol don't cascade to the audio widget. 


Sorry for the spam, couldn't figure out how to edit a previous comment.
Comment 5 Ismael Asensio 2025-05-18 16:56:52 UTC
(In reply to Otto from comment #4)
> Oops, seems like I misunderstood. Pavucontrol does show changes made with
> pw-cli, but the changes in pavucontrol don't cascade to the audio widget. 

Thanks! This was helpful. I wanted to rule out an issue with pipewire not notifying the change in their pipewire-pulse interface, but this seems not to be the case, as pavucontrol do show the changes

> Sorry for the spam, couldn't figure out how to edit a previous comment.
Don't worry. Unfortunately current bugzilla interface doesn't allow to edit comments