mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-12-28 08:57:33 -05:00
session-manager: split policy and monitor
Separate the session manager in a monitor and policy part. The monitor manages the devices and endpoints. The policy watches the nodes/ports/clients and applies the policy of linking them. Because both now have a separate connection, we can remove some hacks in the protocol. When a remote was both the implementer and user of an object we could get in a deadlock when the user was blocked waiting and the implementator was blocked sending a reply. We used to un-busy a client when it was expecting a reply from a ping or sync for this reason. Add and use some more keys for the endpoints and streams.
This commit is contained in:
parent
8bbfe876a7
commit
4ad7ce3aa2
11 changed files with 138 additions and 1365 deletions
|
|
@ -46,6 +46,8 @@ executable('export-spa-device',
|
|||
|
||||
executable('media-session',
|
||||
'media-session/media-session.c',
|
||||
'media-session/monitor.c',
|
||||
'media-session/policy.c',
|
||||
c_args : [ '-D_GNU_SOURCE' ],
|
||||
install: false,
|
||||
dependencies : [dbus_dep, pipewire_dep, alsa_dep, mathlib],
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue