LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Pipewire pulseaudio emulation without pulseaudio installed (works) (https://www.linuxquestions.org/questions/slackware-14/pipewire-pulseaudio-emulation-without-pulseaudio-installed-works-4175692606/)

adcdam 03-24-2021 09:32 PM

Pipewire pulseaudio emulation without pulseaudio installed (works)
 
I did this:
i downloaded the binaries of package pipewire-0.3.24-1.fc33.x86_64.rpm , pipewire-alsa-0.3.24-1.fc33.x86_64.rpm, pipewire-libs-0.3.24-1.fc33.x86_64.rpm, pipewire-pulseaudio-0.3.24-1.fc33.x86_64.rpm , pipewire-utils-0.3.24-1.fc33.x86_64.rpm, systemd-libs-246.6-3.fc33.x86_64.rpm from fedora using this https://pkgs.org/

i converted to tgz format using rpm2tgz
first i installed all packages but without systemd libs
pipewire-pulseadio failed at first then i copied libsystemd.so.0 to /usr/lib64/pipewire-0.3/


and pipewire with pulseaudio emulation now works without having pulseaudio installed in Slackware.

LuckyCyborg 03-25-2021 02:35 AM

Quote:

Originally Posted by adcdam (Post 6233882)
I did this:
i downloaded the binaries of package pipewire-0.3.24-1.fc33.x86_64.rpm , pipewire-alsa-0.3.24-1.fc33.x86_64.rpm, pipewire-libs-0.3.24-1.fc33.x86_64.rpm, pipewire-pulseaudio-0.3.24-1.fc33.x86_64.rpm , pipewire-utils-0.3.24-1.fc33.x86_64.rpm, systemd-libs-246.6-3.fc33.x86_64.rpm from fedora using this https://pkgs.org/

i converted to tgz format using rpm2tgz
first i installed all packages but without systemd libs
pipewire-pulseadio failed at first then i copied libsystemd.so.0 to /usr/lib64/pipewire-0.3/


and pipewire with pulseaudio emulation now works without having pulseaudio installed in Slackware.

And how did you get the libpulse.so on your system after the PulseAudio package removal? :D

You forgot to tell us how you got this library, against which the PulseAudio clients are built. You need at least it, or the programs built against PulseAudio will crash.

To be very clear for you and the people who eventually read your post:

The PipeWire (with its PulseAudio compat server) does NOT replaces entirely the PulseAudio software, but ONLY its audio server - the other things like libraries, headers or utilities of PulseAudio are still needed as usual.

As someone who uses PipeWire since over half a year, I tell you that PipeWire is NOT for PulseAudio haters who want to remove completely the PulseAudio software from their systems.

At least not right now and not in the near future, because today only few audio programs knows how to talk with PipeWire over its native API.

PS. Honestly, also I am quite curious how did you run the PipeWire daemons? They will not start on demand, like the PulseAudio server, so you need to run them somehow, since user logins until user logouts. You use the methods described by us on other PipeWire threads?

FTIO 03-25-2021 09:21 AM

And to add to LuckyCyborg's post, installing that systemd thing just installed systemd, something Slackware is trying to stay away from I believe (and hope and pray to the gods!).

Does not adding anything 'systemd' mean other parts of the system as a whole will need to use more of systemd to operate correctly?

I ask because I am not a programmer in any sense of the term and 95% of the stuff I read in threads like this one goes so far over my head I feel like a midget who's never dribbled a basketball before on a basketball court against the Harlem Globetrotters. So when I do ask, it's to clear up just enough for my own understanding, which eventually helps me a little more in understanding more in threads like these (hey, if I can't afford the schooling and after a decade of trying to learn to program online has failed (a severe memory problem makes it difficult at best), tghreads like these *are* my programming school, heh heh).

adcdam 03-25-2021 10:12 AM

Pipewire-libs obsolete package pipewire-pulse, pipewire-pulse have libpulse.so. i didnt install systemd, just the librariy i needed. To FTIO if you are using elogind or eudev you are using parts of systemd. i dont like systemd either i dont use it.In Gentoo i use runit and s6 init.

to being able to launch pipewire i have this in my .xinitrc:

if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
eval `dbus-launch --sh-syntax --exit-with-session`
fi
/usr/bin/pipewire &
sxhkd &
exec bspwm
i launch with with rofi.
https://www.youtube.com/watch?v=HHEnaVUnRVM

here is a video of a guy testing in Fedora
as you can see it works without pulseaudio installed as long as it have the right libraries.
if another distro have a separated libpulse package it can work too.

opty 03-27-2021 02:48 PM

Have you tried apulse (SBo)?

LuckyCyborg 03-27-2021 03:13 PM

Quote:

Originally Posted by opty (Post 6234791)
Have you tried apulse (SBo)?

PipeWire (initially known as PulseVideo) is right on the PulseAudio successor, it is not a PulseAudio emulator like apulse. ;)

opty 03-27-2021 03:19 PM

Regarding libpulse.so. :-)

LuckyCyborg 03-27-2021 03:41 PM

Quote:

Originally Posted by opty (Post 6234806)
Regarding libpulse.so. :-)

That "libpulse.so" from apulse routes the audio right to ALSA, while to use the PipeWire Pulse-compat server you need a "libpulse.so" which does the original thing: routing the audio to a PulseAudio server.

opty 03-27-2021 03:43 PM

Then I got it wrong, sorry for the noise. :-(

adcdam 03-28-2021 01:40 PM

Opty i dont need apulse because as i said in the post i got sound launching pipewire the way i described, and no i dont have pulseaudio installed.
Fedora packages doesnt need pulseaudio.

Pithium 03-29-2021 12:10 AM

I don't see much of a reason to bother removing pulseaudio if you want to switch to pipewire unless you REALLY hate having it installed. It's pretty trivial to have the pipewire daemon run in place of pulse. I haven't seen any applications struggle and that includes gaming with positional audio. it can all be done without making any changes to slackware packages.

adcdam 03-29-2021 04:31 PM

yes i know its easier to leave pulseaudio installed but i just hate any Poettering software, i just hate it with passion and i dont want any of his software in my rig.

LuckyCyborg 03-29-2021 04:57 PM

Quote:

Originally Posted by adcdam (Post 6235337)
yes i know its easier to leave pulseaudio installed but i just hate any Poettering software, i just hate it with passion and i dont want any of his software in my rig.

Did you known that the PipeWire was started and developed by the Mr. Poettering's colleagues, right?

I bet the PipeWire authors knows personally Mr. Poettering, and many times they hanged up at a beer... ;)

Changes something for you? :D

BTW, in defense of PulseAudio and its inventor: at last Mr. Poettering did not made PulseAudio as a "user target" service for systemd, like the PipeWire authors did. Yeah, I know well about what I talk... ;)

jr_bob_dobbs 03-29-2021 09:49 PM

A bit off topic ...

I always wondered...

You know how Alsa has an optional compatibility layer so that programs that want OSS but not Alsa can use what they think is OSS but it's actually Alsa?

Why don't the folks working on Alsa add a similar compatibility layer for pulseaudio, so that programs that want pulseaudio but not Alsa can use what they think is pulseaudio but it's actually Alsa?

opty 03-30-2021 05:31 AM

Quote:

Originally Posted by LuckyCyborg (Post 6233940)
The PipeWire (with its PulseAudio compat server) does NOT replaces entirely the PulseAudio software, but ONLY its audio server - the other things like libraries, headers or utilities of PulseAudio are still needed as usual.

Quote:

Originally Posted by LuckyCyborg (Post 6234811)
That "libpulse.so" from apulse routes the audio right to ALSA, while to use the PipeWire Pulse-compat server you need a "libpulse.so" which does the original thing: routing the audio to a PulseAudio server.

Quote:

Originally Posted by opty (Post 6234812)
Then I got it wrong, sorry for the noise. :-(

Maybe I didn't.

I still think you could use apulse if it worked, although I'd probably consider it... unusual. :-)


All times are GMT -5. The time now is 06:26 AM.