Multimedia processing graphs
Find a file
2018-10-27 10:11:27 +01:00
doc
man
pipewire-alsa@7e513ea243
pipewire-jack@1ffee101fb
pipewire-pulseaudio@2a1328533f
po
spa
src
.gitignore
.gitmodules
.travis.yml
_config.yml
autogen.sh
config.h.meson
Dockerfile
git-version-gen
GPL
LGPL
LICENSE
Makefile.in
meson.build
meson.sh
meson_options.txt
NEWS
PROTOCOL
pw-uninstalled.sh
README

PipeWire
--------

PipeWire is a server and user space API to deal with multimedia
pipelines. This includes:

  - Making available sources of video (such as from a capture devices or
       application provided streams) and multiplexing this with
       clients.
  - Accessing sources of video for consumption.
  - Generating graphs for audio and video processing.

Nodes in the graph can be implemented as separate processes,
communicating with sockets and exchanging multimedia content using fd
passing.

Building
--------

Pipewire uses the Meson and Ninja build system to compile. If you're not
familiar with these tools, the included "autogen.sh" script will
automatically run the correct meson/ninja commands, and output a Makefile.
It follows that there are two methods to build Pipewire, however both rely
on Meson and Ninja to actually perform the compilation:

$ ./autogen.sh
$ make

or the Meson/Ninja native method:

$ meson build
$ cd build
$ ninja

You can see the available meson options in meson_options.txt file. All plugins are
disabled by default. To enable a spa plugin you need to enable spa-plugins and the
plugin name meson option.

$ meson build -Dspa-plugins=true -D<plugin-name>=true