Device Activation Fixes
Currently in the device activation module, when the default profile cannot be found for a device, WirePlumber always sets the first listed profile. On the other hand, if the default profile is found but its availability is no
, WirePlumber is also using the default profile on the device, which is wrong.
This MR fixes the device activation module to only use the default device if it is found and if its availability is yes
. In addition to this, if the default device is not found, WirePlumber will select the one with highest priority and availability, using the same algorithm as pipewire-media-session: https://gitlab.freedesktop.org/pipewire/media-session/-/blob/master/src/default-profile.c#L189-230