services/pipewire: update volume props from device for device nodes

Yet another device node edge case. In addition to only writing via
a pw_device when present, now we only read from one as well.

This fixes missing state changes not conveyed by the pw_node.

Fixes #35
This commit is contained in:
outfoxxed 2025-06-19 05:12:24 -07:00
parent 579d589290
commit 95d0af8113
No known key found for this signature in database
GPG key ID: 4C88A185FB89301E
5 changed files with 61 additions and 19 deletions

View file

@ -203,9 +203,10 @@ signals:
private slots:
void onDeviceReady();
void onDeviceVolumesChanged(qint32 routeDevice, const PwVolumeProps& props);
private:
void updateVolumeProps(const spa_pod* param);
void updateVolumeProps(const PwVolumeProps& volumeProps);
bool mMuted = false;
QVector<PwAudioChannel::Enum> mChannels;