-
George Kiagiadakis authored
* Every client has a priority based on its role * For playback, we allow only a single client to play at a time * For capture, we allow all clients to capture simultaneously * Every time the "selected" device changes (either because devices are discovered/removed or because the user changed the selection), the clients are re-linked to the new "selected" device. * When a playback client quits and there are others waiting unlinked, the highest priority one is linked automatically. * This also properly fixes re-linking the correct client(s) to the correct device(s) when wireplumber exits and restarts.
George Kiagiadakis authored* Every client has a priority based on its role * For playback, we allow only a single client to play at a time * For capture, we allow all clients to capture simultaneously * Every time the "selected" device changes (either because devices are discovered/removed or because the user changed the selection), the clients are re-linked to the new "selected" device. * When a playback client quits and there are others waiting unlinked, the highest priority one is linked automatically. * This also properly fixes re-linking the correct client(s) to the correct device(s) when wireplumber exits and restarts.