docs: update README and INSTALL

This commit is contained in:
Wim Taymans 2020-11-27 17:16:57 +01:00
parent 6e0fed37b4
commit aa63077eea
2 changed files with 34 additions and 44 deletions

View file

@ -135,19 +135,12 @@ The provides pw-jack script uses LD_LIBRARY_PATH to set the library
search path to these replacement libraries. This allows you to run search path to these replacement libraries. This allows you to run
jack apps on both the real JACK server or on PipeWire with the script. jack apps on both the real JACK server or on PipeWire with the script.
It is also possible to completely replace the JACK libraries by making It is also possible to completely replace the JACK libraries by adding
a symlink in /usr/lib64/ as follows: a file `pipewire-jack-x86_64.conf` to `/etc/ld.so.conf.d/` with
contents like:
``` ```
/usr/lib64/libjacknet.so -> libjacknet.so.0.1.0 /usr/lib64/pipewire-0.3/jack/
/usr/lib64/libjacknet.so.0 -> libjacknet.so.0.1.0
/usr/lib64/libjacknet.so.0.1.0 -> pipewire-0.3/jack/libjacknet.so.0
/usr/lib64/libjackserver.so -> libjackserver.so.0.1.0
/usr/lib64/libjackserver.so.0 -> libjackserver.so.0.1.0
/usr/lib64/libjackserver.so.0.1.0 -> pipewire-0.3/jack/libjackserver.so.0
/usr/lib64/libjack.so -> libjack.so.0.1.0
/usr/lib64/libjack.so.0 -> libjack.so.0.1.0
/usr/lib64/libjack.so.0.1.0 -> pipewire-0.3/jack/libjack.so.0
``` ```
Note that when JACK is replaced by PipeWire, the SPA JACK plugin (installed Note that when JACK is replaced by PipeWire, the SPA JACK plugin (installed
@ -155,38 +148,24 @@ in /usr/lib64/spa-0.2/jack/libspa-jack.so) is not useful anymore and
distributions should make them conflict. distributions should make them conflict.
### PulseAudio emulation ### PulseAudio replacement
PipeWire reimplements the 3 libraries that PulseAudio applications use to make PipeWire reimplements the PulseAudio server protocol as a small service
them run on top of PipeWire. that runs on top of PipeWire.
These libraries are found here: The binary is normally placed here:
``` ```
/usr/lib64/pipewire-0.3/pulse/libpulse-mainloop-glib.so -> libpulse-mainloop-glib.so.0 /usr/bin/pipewire-pulse
/usr/lib64/pipewire-0.3/pulse/libpulse-mainloop-glib.so.0 -> libpulse-mainloop-glib.so.0.304.0
/usr/lib64/pipewire-0.3/pulse/libpulse-mainloop-glib.so.0.304.0
/usr/lib64/pipewire-0.3/pulse/libpulse-simple.so -> libpulse-simple.so.0
/usr/lib64/pipewire-0.3/pulse/libpulse-simple.so.0 -> libpulse-simple.so.0.304.0
/usr/lib64/pipewire-0.3/pulse/libpulse-simple.so.0.304.0
/usr/lib64/pipewire-0.3/pulse/libpulse.so -> libpulse.so.0
/usr/lib64/pipewire-0.3/pulse/libpulse.so.0 -> libpulse.so.0.304.0
/usr/lib64/pipewire-0.3/pulse/libpulse.so.0.304.0
``` ```
The provides pw-pulse script uses LD_LIBRARY_PATH to set the library The server can be started with provided systemd activation files or
search path to these replacement libraries. This allows you to run from PipeWire itself. (See `/etc/pipewire/pipewire.conf`)
PulseAudio apps on both the real PulseAudio server or on PipeWire
with the script.
To replace the pulseaudio libraries completely symlinks need to be
made in /usr/lib64 like this:
``` ```
/usr/lib64/libpulse-mainloop-glib.so -> libpulse-mainloop-glib.so.0 systemctl --user stop pipewire-pulse.service
/usr/lib64/libpulse-mainloop-glib.so.0 -> pipewire-0.3/pulse/libpulse-mainloop-glib.so.0.304.0 systemctl --user stop pipewire-pulse.socket
/usr/lib64/libpulse-simple.so -> libpulse-simple.so.0
/usr/lib64/libpulse-simple.so.0 -> pipewire-0.3/pulse/libpulse-simple.so.0.304.0
/usr/lib64/libpulse.so -> libpulse.so.0
/usr/lib64/libpulse.so.0 -> pipewire-0.3/pulse/libpulse.so.0.304.0
``` ```
You can also start additional PulseAudio servers listening on other
sockets with the -a option. See `pipewire-pulse -h` for more info.

View file

@ -75,15 +75,26 @@ effect and can be omitted.
### Running PulseAudio applications ### Running PulseAudio applications
Depending on how the system was configured, your can either run PipeWire and PipeWire can run a PulseAudio compatible replacement server. You can't
PulseAudio side-by-side or have PipeWire take over the functionality of use both servers at the same time. Usually you package manager will
PulseAudio completely. We don't recommend to completely replace PulseAudio make the server conflict so that you can only install one or the
at this point. other.
Use the `pw-pulse` script to launch a PulseAudio application on PipeWire, like: PulseAudio application still use the regular PulseAudio client
libraries and you don't need to to anything else than change the
server implementation.
A successful swap of the server can be verified by checking the
output of
``` ```
$ pw-pulse <appname> pactl info
```
It should include the string:
```
...
Server Name: PulseAudio (on PipeWire 0.3.x)
...
``` ```
### Running ALSA applications ### Running ALSA applications
@ -145,7 +156,7 @@ $ pw-cli info 0
Find tutorials and design documentation [here](doc/index.md). Find tutorials and design documentation [here](doc/index.md).
The autogenerated API docs are [here](https://docs.pipewire.org). The (incomplete) autogenerated API docs are [here](https://docs.pipewire.org).
## Contributing ## Contributing