mirror of
https://gitlab.freedesktop.org/pipewire/pipewire
synced 2024-10-14 20:02:38 +00:00
doc: add basic docs for the session manager
This commit is contained in:
parent
d0060fbddd
commit
13ffc549c9
|
@ -1,4 +1,42 @@
|
|||
/** \page page_session_manager PipeWire Session Manager
|
||||
|
||||
The \ref page_daemon is primarily a framework that allows devices and
|
||||
applications to exchange data.
|
||||
|
||||
It provides the mechanism to do so but the policy deciding which components
|
||||
can talk to each other and when is controlled by the session manager. As
|
||||
outlined in \ref page_objects_design, PipeWire provides a media graph
|
||||
consistent of Devices, Nodes and Ports. The session manager is the one that
|
||||
decides on the links between those elements.
|
||||
|
||||
Two prominent session managers currently exist:
|
||||
- \ref page_media_session - the reference session manager provided by PipeWire
|
||||
- [WirePlumber](https://gitlab.freedesktop.org/pipewire/wireplumber), a
|
||||
modular session manager based on GObject
|
||||
|
||||
This page describes some of the requirements for session managers in general.
|
||||
|
||||
## Client management
|
||||
|
||||
PipeWire provides a \ref page_access "permission system" to limit client's
|
||||
acccess to resources but only \ref page_module_access "basic permission
|
||||
handling". The session manager is expected to decide whether clients may
|
||||
access specific resources.
|
||||
|
||||
## Device management
|
||||
|
||||
PipeWire's responsibility is to open devices, however the decision on which
|
||||
devices should be opened is the job of a session manager, including the
|
||||
configuration of those devices.
|
||||
|
||||
|
||||
## Endpoint grouping
|
||||
|
||||
An endpoint is, effectively, a group of Nodes that are a logical unit that can
|
||||
consume or produce media data. For example, a Bluetooth speaker may present as
|
||||
several Nodes but is only one logical unit to stream audio to.
|
||||
|
||||
See \ref page_objects_design for details on Endpoints.
|
||||
|
||||
*/
|
||||
|
||||
|
|
Loading…
Reference in a new issue