/** \mainpage PipeWire PipeWire is low-level multimedia framework that provides: - Graph based processing. - Support for out-of-process processing graphs with minimal overhead. - Flexible and extensible media format negotiation and buffer allocation. - Hard real-time capable plugins. - Very low-latency for both audio and video processing. See \ref page_overview for an overview of PipeWire and \ref page_design for the design principles guiding PipeWire. # Documentation - \ref page_config - \ref page_programs - \ref page_modules - \ref page_pulse_modules See our [Wiki](https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/home) for more information on how to configure and use PipeWire. # Components PipeWire ships with the following components: - A \ref page_daemon that implements the IPC and graph processing. - An example \ref page_session_manager that manages objects in the \ref page_daemon. - A set of \ref page_programs to introspect and use the \ref page_daemon. - A \ref page_library to develop PipeWire applications and plugins (\ref page_tutorial "tutorial"). - The \ref page_spa used by both the \ref page_daemon and in the \ref page_library. # API Documentation See \ref page_api. # Resources - [PipeWire and AGL](https://wiki.automotivelinux.org/_media/pipewire_agl_20181206.pdf) - [LAC 2020 Paper](https://lac2020.sciencesconf.org/307881/document) - [PipeWire Under The Hood](https://venam.nixers.net/blog/unix/2021/06/23/pipewire-under-the-hood.html) - [PipeWire: The Linux audio/video bus (LWN)](https://lwn.net/Articles/847412) - [PipeWire Wikipedia](https://en.wikipedia.org/wiki/PipeWire) - [Bluetooth, PipeWire and Whatsapp calls](https://gjhenrique.com/pipewire.html) - [Intoduction to PipeWire](https://bootlin.com/blog/an-introduction-to-pipewire/) - [A custom PipeWire node](https://bootlin.com/blog/a-custom-pipewire-node/) */