Page 3 of 13

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 12:56 pm
by anticapitalista
@DeepDayze
Good to hear.
Do they work without systemd?

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 3:23 pm
by DeepDayze
anticapitalista wrote: Sat Oct 15, 2022 12:56 pm @DeepDayze
Good to hear.
Do they work without systemd?
Oh haven't tested that so will try in SysVinit mode and report back. The MX testing repo PW/WP packages work fine in systemd.

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 4:21 pm
by AVLinux
DeepDayze wrote: Sat Oct 15, 2022 10:58 am
anticapitalista wrote: Fri Oct 07, 2022 5:58 pm IMO - on Debian, wireplumber and pipewire will only be 'reliable' on Debian-12 (forget trying to get it to work on Debian 11).
I used the test pipewire-3.58 and wireplumber 4.12 packages and set them up according to the debian 11 wiki and works for me. Even masked pulse service to keep it from starting, plus installing the pipewire-pulse package as well. YT videos play with no juddering so does audacious, including using a bt headset. So yes PW works on MX :)

Note: Sid has the PW 3.59 and wonder if that would be backported to MX test repo to try out...
Any details or system-wide configs you can provide would be very much appreciated, as a personal example I'm using and testing Enlightenment as a future Desktop Environment and it reportedly requires pipewire-pulse as it doesn't directly work with PW, are you saying you have simply disabled PulseAudio on your system or have you removed it completely? I'm a little unclear if PulseAudio and JACK are still required on the system or if PipeWire completely replaces them with it's own server and clients.

I would concur that any info about performance with sysvinit will be vital to know.

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 4:24 pm
by DeepDayze
Okay, on MX-21.2 in testing under Sysvinit, pipewire and wireplumber does not start but pulseaudio does (I kept all pulseaudio packages installed). Pulseaudio service starts under Sysvinit as it's only masked in systemd. There may need to be some init scripts developed along the lines of the systemd units for pipewire and wireplumber to ensure they are able to start under Sysvinit.

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 4:27 pm
by AVLinux
DeepDayze wrote: Sat Oct 15, 2022 4:24 pm Okay, on MX-21.2 in testing under Sysvinit, pipewire and wireplumber does not start but pulseaudio does (I kept all pulseaudio packages installed). Pulseaudio service starts under Sysvinit as it's only masked in systemd. There may need to be some init scripts developed along the lines of the systemd units for pipewire and wireplumber to ensure they are able to start under Sysvinit.
Ugh! That is discouraging... a new supposedly universal Audio server should be completely compliant with all known init systems.., I would guess this is what @anticapitalista was finding on the antiX side

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 4:58 pm
by dolphin_oracle
I have it running under sysvinit. starts in a similar fashion to the way pulseaudio starts, via an autostart entries.

installed all the pipepire, pipewire-alsa, pipewire-pulse, gstreamer1.0-pipewire and wireplumber from the debian backports repo. (0.3.58)

**edit** for bluetooth remove pulseaudio-modules-bluetooth and install libspa-0.2-bluetooth

setup two config files.

Code: Select all

sudo cp /usr/share/doc/pipewire/examples/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/

sudo mkdir /usr/share/pipewire/media-session.d

sudo touch /usr/share/pipewire/media-session.d/with-alsa
I created a executable "/usr/bin/pipewire-start" script with the following contents:

Code: Select all

#/bin/bash

INITCHECK=$(ps -p 1 -o cmd -h)

if [ "$INITCHECK" = "/lib/systemd/systemd" ]; then 
	exit 0
fi
#else start them up
pipewire &
pipewire-pulse &
wireplumber &

exit 0
made executable with

Code: Select all

chmod a+x pipewire-start
and created an autostart entry. to be generic for all users, I put this under /etc/xdg/autostart as pipewire.desktop

Code: Select all

[Desktop Entry]
[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=pipewire (sysVinit)
Comment=pipewire (sysvinit)
Exec=/usr/bin/pipewire-start
StartupNotify=false
Terminal=false
Hidden=false
and upon reboot I have the pipewire-pulse pulseaudio replacement, which looks like this in pactl:

Code: Select all

pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 34
Server Protocol Version: 35
Is Local: yes
Client Index: 77
Tile Size: 65472
User Name: dolphin
Host Name: littlebyte
Server Name: PulseAudio (on PipeWire 0.3.58)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_00_1b.0.analog-stereo
Default Source: alsa_input.pci-0000_00_1b.0.analog-stereo
Cookie: 1f25:d14d
bonus: the autostart entries appear to work OK under either sysVinit or systemd. looking at the debian 12 instructions, which are more applicable to th mx test and/or debian-backports versions, I realsized hte systemd setup was acting on a user level. that seemed to be complicated, hence the autostart sequence.

Its possible some feature won't work though. there is reference to a systemd socket for pipewire, but these likely don't exist under sysVinit. I'm going to run this for a while and see what doesn't work.

***edit*** modified startup script to only launch items under sysVinit. even masking the systemd services proved problematic upon logout/login.

***edit*** removed pulseaudio init script disable info as its not really necessary.

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 5:19 pm
by AVLinux
Wow! Excellent!!

Must try/test ASAP!

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 6:21 pm
by dolphin_oracle
for bluetooth, remove pulseaudio-modules-bluetooth and install libspa-0.2-bluetooth. a reboot was required but I suspect just restarting the pipewire server would also work.

one interesting note...once the bluetooth headphones connected, the system autoswitched to the headphones. on pulse that did not happen. However, the xfce4-pulseaudio-plugin does not show devices to switch outputs like it does under pulse. not sure which I prefer...

my mics don't show up as a device to select anywhere either...

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 6:37 pm
by dolphin_oracle
Hmmm ever since hooking up my Bluetooth everything quit working.

Re: PipeWire integration discussion?

Posted: Sat Oct 15, 2022 6:57 pm
by dolphin_oracle
hmmm, bluetooth audio still works, and regular audio works under sysVinit. but does not work under systemd anymore.