Live data from Hacker News

PipeWire: A year in review and a look ahead

collabora.com

21–30 of 125 posts

Re: PipeWire: A year in review and a look ahead

#21
post #2

I recently made the switch in NixOS and found it pretty painless. Can't get my mic to work in Firefox though, and the other day I was looking through the manual trying to figure out how to use my HDMI screen's speakers rather than the built-in one and couldn't find the right incantation. Sounds like such rough corner cases will be a thing of the past soon. Congrats to the dev team!

I wonder how your setup is different than mine. I also switched to Pipewire (some months ago) and I'm using NixOS and Arch Linux, and on both I could just change the audio output to my speakers on my monitors (via HDMI) with the usual device switch, same as before with just PulseAudio. Everything works perfectly.

Re: PipeWire: A year in review and a look ahead

#22
post #12

Can anyone explain me like I'm five, why this major transition from PulseAudio to PipeWire is happening during the last year?

There are some things PipeWire makes a lot easier to do.

For example, I have an electric piano that I can connect to my computer and play. I had to install a special software called "jack", because PulseAudio would have me wait before I could hear a note I played.

Jack was not simple to use, but even if you were good at it, there were problems. Imagine you wanted to play along with some music. Well, bad luck, some software do not support jack, and you can't use it together with PulseAudio.

Now lets say I want to stream my playing on Twitch. Again I will have trouble, because the many moving parts in streaming, including video, make it very difficult to output a high quality stream.

Last, when I use DaVinci Resolve to edit and upload my stream to Youtube, I want to record some voice over. Resolve has this function called "ADR", or "Automated dialogue replacement" -- it's a feature they use in film to record the actors on the computer. I could use that to record my voice over, but ADR on Resolve doesn't bother with either Pulse or Jack, and uses something called "ALSA". That means that until Resolve finishes using it, I can't use my microphone!

With Pipewire I just click and it works.

Re: PipeWire: A year in review and a look ahead

#23
post #9
post #7

I'm using pipewire and pipewire-pulse in void linux, and everything works perfectly.

Do Bluetooth devices also work perfectly? For me, BT works perfectly with PulseAudio. PipeWire is very satisfying for absolutely everything else, but BT devices just refuse to connect (and I'm inept at debugging BT issues).

I had problems until i realized i still had `pulseaudio-*` packages installed. Now I only have `pipewire` and `pipepire-pulse` and everything works flawlessly.

Re: PipeWire: A year in review and a look ahead

#24
post #19
post #12

Can anyone explain me like I'm five, why this major transition from PulseAudio to PipeWire is happening during the last year?

Pipewire has become more usable for audio during the last year. Actual advantages of pipewire vs pulseaudio are not that obvious, but it should mostly be lower-latency, hopefully more stable, and more flexible (provide something like the old `jack` API where any stream can be plugged anywhere). Also, support for sandboxing (flatpak portals) is first-class, as one of the early design goals was to provide this for vide…

> Edit: also, pipewire gained support for nicer bluetooth codecs faster than pulseaudio did.

Yep, I have a pair of Sony WH-1000XM3 which supports better codecs like LDAC and you had to resort to a 3rd party, home-made repository in Ubuntu for pulseaudio (initially there were licensing reasons but then Sony opensourced it IIRC). With PipeWire (on Ubuntu 21.10) I just have to install a package from the standard repo.

Re: PipeWire: A year in review and a look ahead

#25
post #17
post #12

Can anyone explain me like I'm five, why this major transition from PulseAudio to PipeWire is happening during the last year?

Pipewire was started by Wim Taymans, one of the gstreamer people. Originally it was supposed to allow video-streams in sandboxed environments like flatpak (and was known as "pulsevideo"), but then he noticed that it could be extended to do audio as well. Since pulseaudio's architecture isn't well-suited to incorporate sandboxing, that project continued and it turned out that it could handle compatibility with both pu…

5. Pipewire doesn't use buffer rewinding, which was a rich source of complexity and bugs not only in PulseAudio, but also exposed bugs in the kernel audio device drivers. And even bugs or poorly specified behavior in HW itself, considering AFAIU neither macOS, Windows (nor Jack) use rewinding.

Re: PipeWire: A year in review and a look ahead

#26
I'm not a pro user but PipeWire has been mostly great. I originally switched because of PulseAudio was causing a hissing noise on with my bluetooth headset, and switching fixed it. However, there are still two issues that I'm struggling with and haven't been able to find a definitive answer for.

One is the audio sometimes randomly jitters while simply playing music. It seems this only happens when I use my bluetooth headset, but is fine with built-in audio.

The other is, when the automatic switching to bluetooth headset is hit and miss. Sometimes it switches, sometimes it doesn't, and sometimes one applications switch, but others don't. So I'm left to use pavucontrol to switch things over correctly.

My searches haven't returned any fruitful results so I'm not if I'm just searching for the wrong things or I'm the only person who has these issues.

Re: PipeWire: A year in review and a look ahead

#27
Some more anecdata, I switched to pipewire when I bought my new laptop and it was great. I was struggling to get pulseaudio working properly, switched to pipewire and installed pipewire-pulse[0] from the arch packages, and stuff "just worked".

It's one of the only times in recent memory that moving over to 'the new thing' actually worked without significant pain.

https://archlinux.org/packages/extra/x86_64/pipewire-pulse/

Re: PipeWire: A year in review and a look ahead

#28
post #17
post #12

Can anyone explain me like I'm five, why this major transition from PulseAudio to PipeWire is happening during the last year?

Pipewire was started by Wim Taymans, one of the gstreamer people. Originally it was supposed to allow video-streams in sandboxed environments like flatpak (and was known as "pulsevideo"), but then he noticed that it could be extended to do audio as well. Since pulseaudio's architecture isn't well-suited to incorporate sandboxing, that project continued and it turned out that it could handle compatibility with both pu…

Wim Taymans is amazing. Maybe one of the greatest programmers of all time.

Re: PipeWire: A year in review and a look ahead

#30
Is anybody here using pipewire to stream to a different machine on the same network?

I currently use Pulseaudio to send audio from my laptop to a raspberry (with a DAC hat) connected to my hifi, but it turns out it's a pretty niche use case. So I'm looking for anybody with a similar use case who has upgraded from PA to PW and can talk about the experience.

Post reply on HN