WirePlumber
WirePlumber is a modular session / policy manager for PipeWire and a GObject-based high-level library that wraps PipeWire’s API, providing convenience for writing the daemon’s modules as well as external tools for managing PipeWire.
The WirePlumber daemon implements the session & policy management service. It follows a modular design, having plugins that implement the actual management functionality.
The WirePlumber Library provides API that allows you to extend the WirePlumber daemon, to write management or status tools for PipeWire (apps that don’t do actual media streaming) and to write custom session managers for embedded devices.
Documentation
The latest version of the documentation is available online here
Table of Contents
- C API Documentation
- Library Initialization
- Core
- WpObject
- Object Manager
- Object Interest
- Iterator
- Transitions
- Error Codes
- Debug Logging
- PipeWire Proxy
- PipeWire Object
- PipeWire Global Object Proxy
- PipeWire Node
- PipeWire Port
- PipeWire Link
- PipeWire Device
- PipeWire Client
- PipeWire Metadata
- Spa Device
- Local Nodes
- Local Modules
- Properties Dictionary
- Spa Type Information
- Spa Json
- Spa Pod (Plain Old Data)
- Plugins
- Component Loader
- Settings
- Static Configuration
- Session Items
- Session Items Interfaces
- Session Items Factory
- State Storage
- Base Directories File Lookup