pipewire-pulse does not support remote tunnels

Bug #2008609 reported by Jasper
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pipewire (Ubuntu)
New
Undecided
Unassigned

Bug Description

Pipewire (pipewire-pulse), as a drop in replacement for Pulseaudio, should find tunnelled Pulseadio sinks over a network.

It currently does not.

Resolution is currently removing the `pipewire-pulse` package with the Pulseaudio packages still installed.

ProblemType: Bug
DistroRelease: Ubuntu 22.10
Package: pipewire-pulse (not installed)
ProcVersionSignature: Ubuntu 5.19.0-35.36-generic 5.19.17
Uname: Linux 5.19.0-35-generic x86_64
ApportVersion: 2.23.1-0ubuntu3
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: Unity:Unity7:ubuntu
Date: Sun Feb 26 22:43:57 2023
InstallationDate: Installed on 2021-02-16 (739 days ago)
InstallationMedia: Ubuntu 20.10 "Groovy Gorilla" - Beta amd64 (20201015)
SourcePackage: pipewire
UpgradeStatus: Upgraded to kinetic on 2023-02-21 (4 days ago)

Revision history for this message
Jasper (jasper-mackenzie) wrote :
Revision history for this message
Jasper (jasper-mackenzie) wrote :

Loading the module `module-zeroconf-discover` enables the discovery and configuration of remote sinks as expected. Loaded as:
```
pactl load-module module-zeroconf-discover
```

This is non-obvious from a user point of view and I suggest that a default configuration is created at a system level to _at least_ discover network audio sources.

Creating the directory `/etc/pipewire/pipewire-pulse.conf.d/` containing the file `50-network-sink-discovery.conf` with the following content:
```
context.modules = [
{ name = libpipewire-module-zeroconf-discover
    args = { }
}
]
```
enables discovery across reboots.

Revision history for this message
Jasper (jasper-mackenzie) wrote :

Unfortunately the discovered network audio sink works intermittently:
 * Audio source (such as mplayer) plays audio to pulse (fine)
 * I can see the stream playing in `pavucontrol`
 * I can see the tunneled connection on the server side
 * The first time I play a file there is no audio and underrun/overrun's in the local pipewire-pulse log
 * The next time I play, or advance to the next track the audio works for a time but stops within a minute or so with underrun/overruns in the local pipewire-pulse log

with `journalctl --user -f` showing the following repeated error:

```
...
Mar 06 11:36:55 carbonicus pipewire-pulse[8698]: mod.pulse-tunnel: underflow
Mar 06 11:36:59 carbonicus pipewire-pulse[8698]: mod.pulse-tunnel: 0x559140eb7fa0: overrun write:50333448 filled:4182528 + size:49224 > max:4194304
Mar 06 11:36:59 carbonicus pipewire-pulse[8698]: mod.pulse-tunnel: 0x559140eb7fa0: overrun write:50382672 filled:4231752 + size:49200 > max:4194304
Mar 06 11:36:59 carbonicus pipewire-pulse[8698]: mod.pulse-tunnel: 0x559140eb7fa0: overrun write:50431872 filled:4280952 + size:49200 > max:4194304
Mar 06 11:36:59 carbonicus pipewire-pulse[8698]: mod.pulse-tunnel: 0x559140eb7fa0: overrun write:50481072 filled:4330152 + size:49200 > max:4194304
Mar 06 11:36:59 carbonicus pipewire-pulse[8698]: mod.pulse-tunnel: 0x559140eb7fa0: overrun write:50530272 filled:4379352 + size:49224 > max:4194304
Mar 06 11:36:59 carbonicus pipewire-pulse[8698]: mod.pulse-tunnel: 0x559140eb7fa0: overrun write:50579496 filled:4428576 + size:49200 > max:4194304
...
```

Revision history for this message
Jasper (jasper-mackenzie) wrote :

The issue of configuring network sink and source could and should be solved by using `paprefs` or an equivalent. This is how Pulse and Ubuntu users have been used to setting these parameters in the past.
With `pipewire-pulse` the options largely greyed out.

How to proceed, it feels like this bug report is two parts:

1. Pipweire/Pipewire-pulse parity with previous pulse in terms of default behaviour and configuration
2. Pulse tunnel sinks being intermittent.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.