#1038627 general: Various applications log PipeWire-related errors on a Bookworm system using PulseAudio.

#1038627#5
Date:
2023-06-19 07:47:49 UTC
From:
To:
Dear Maintainer,

After upgrade to Bookworm, due to certain limitations of the current
PipeWire implementation I had to switch to PulseAudio. The switch was
done by installing pulseaudio package, deleting all PipeWire packages and
finally enabling pulseaudio service on a user level.

After several reboots and usage of various applications I've noticed
strange errors (visible using journalctl -p 3 -xb) logged that looked as
follows:
"pw.conf: can't load default config client.conf: No such file or directory"
Primarily this error was logged by mpv and Telegram applications.

Investigation of several sources has shown that maybe creation of an empty
~/.config/pipewire/client.conf" file might fix the error.

And indeed it fixed the original error, but procreated a new type of errors:
that look as follows:

Jun 19 07:01:41 Yura-PC xdg-desktop-portal[1768]: pw.core: 0x55d8ca82c830: can't find protocol 'PipeWire:Protocol:Native': Operation not supp>
Jun 19 07:01:42 Yura-PC Telegram[1528]: pw.core: 0x7f78f6ff3d80: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 08:48:37 Yura-PC mpv[4283]: pw.core: 0x5630b5b7c9f0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 08:51:12 Yura-PC mpv[3200]: pw.core: 0x56312d870420: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 08:52:14 Yura-PC mpv[3200]: pw.core: 0x56312d7eff10: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 08:55:55 Yura-PC mpv[3200]: pw.core: 0x56312d8549b0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 08:56:19 Yura-PC mpv[3200]: pw.core: 0x56312d8845d0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:00:53 Yura-PC mpv[3200]: pw.core: 0x56312d7cc000: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:01:12 Yura-PC mpv[3200]: pw.core: 0x56312d883d40: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:03:41 Yura-PC mpv[3200]: pw.core: 0x56312d865130: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:05:15 Yura-PC mpv[3200]: pw.core: 0x56312d7fe5d0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:07:39 Yura-PC mpv[3200]: pw.core: 0x56312d857cf0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:09:31 Yura-PC mpv[3200]: pw.core: 0x56312d7f5740: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:10:56 Yura-PC mpv[3200]: pw.core: 0x56312d85e1e0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:11:50 Yura-PC mpv[3200]: pw.core: 0x56312d8837c0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:15:30 Yura-PC mpv[3200]: pw.core: 0x56312d8656a0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:16:07 Yura-PC mpv[3200]: pw.core: 0x56312d802ab0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:18:11 Yura-PC mpv[3200]: pw.core: 0x56312d861820: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:19:02 Yura-PC mpv[3200]: pw.core: 0x56312d85e270: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:20:36 Yura-PC mpv[3200]: pw.core: 0x56312d8828a0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:22:40 Yura-PC mpv[3200]: pw.core: 0x56312d7f7e40: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:32:29 Yura-PC mpv[3200]: pw.core: 0x56312d8851a0: can't find protocol 'PipeWire:Protocol:Native': Operation not supported
Jun 19 09:33:17 Yura-PC mpv[3200]: pw.core: 0x56312d8e0540: can't find protocol 'PipeWire:Protocol:Native': Operation not supported

So it seems these are PipeWire-related errors logged on a system that
doesn't use this audio subsystem.

The expectation is that such errors aren't logged.

It's worth noting that both input and output audio work fine, despite
the error being logged.

Best Regards,
Yura

#1038627#10
Date:
2023-06-19 10:08:52 UTC
From:
To:
Pipewire is not just for audio, it's also used for video capture
(that's why xdg-desktop-portal needs it, and the same is probably true
for other applications).

To disable the audio side of Pipewire, my understanding is that it should
be sufficient to remove pipewire-pulse, pipewire-alsa, pipewire-jack
and libspa-0.2-bluetooth, while leaving pipewire and wireplumber installed.

    smcv

#1038627#15
Date:
2023-06-19 10:37:51 UTC
From:
To:
Thank you for the repsonse, Simon!

Should the pipewire service be left enabled, or it's better to disable it after the pipewire and wireplumber packages are installed? Will it cause conflicts with PulseAudio if both are enabled?

Yura
------- Original Message -------
#1038627#20
Date:
2023-06-19 10:55:14 UTC
From:
To:
I've noticed that if pipewire.service is running, it'll prevent pulseaudio from handling audio sub-system. So maybe it should be disabled together with its pipewire.socket? The main question that still remains is that GNU/Linux distributions somehow worked without PipeWire and there weren't such issues. If the system already uses PulseAudio, what other components have to be installed/configured to properly replace also the PipeWire video capturing part?

Yura
------- Original Message -------
#1038627#25
Date:
2023-06-19 11:53:22 UTC
From:
To:
1. Ensure that pipewire and pipewire-media-session packages (without recommended packages) are installed.
2. Their services are enabled and running.
3. Reboot (optional).

The PipeWire error log entries mentioned in the ticket description should no longer be added.

Apparently, if the wireplumber session manager is used instead of pipewire-media-session, it'll try to take over the responsibility for audio subsystem as well. And, of course, it's not what we need, since the goal is for PulseAudio to keep fulfilling the respective role.

As a side-note, after PipeWire issues, like the ones described in this ticket:
https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3284 , are resolved in new versions of Debian packages, such steps as well as PulseAudio presence will no longer be necessary.

Yura

#1038627#30
Date:
2023-06-19 12:09:20 UTC
From:
To:
Quoting splashed_overbuilt840@simplelogin.com (2023-06-19 12:55:14)

In case you are not already aware of it, I suggest to read through this
wiki page: https://wiki.debian.org/PipeWire

In my opinion the above page provides a nice overview of what parts of
PipeWire relates to audio - and therefore needs to be avoided/reverted
if used together with Pulseaudio.

Kind regards,

 - Jonas

#1038627#35
Date:
2023-06-19 12:31:11 UTC
From:
To:
Thank you. Yes, I've read that page a couple of times before. And today I've come to conclusion about replacing wireplumber with pipewire-media-session after looking into its contents one more time.

Although, it's worth pointing out that the page is probably out-of-date, because it considers Debian 11 a stable version, when in fact it's already oldstable and Debian 12 is stable.

Yura

#1038627#40
Date:
2023-06-19 12:44:37 UTC
From:
To:
Quoting splashed_overbuilt840@simplelogin.com (2023-06-19 14:31:11)

 - Jonas