Live data from Hacker News

PipeWire: Bluetooth Support Status Update

collabora.com

11–20 of 101 posts

Re: PipeWire: Bluetooth Support Status Update

#11

I’ve only heard good things about PipeWire so I must ask: will this finally give me a lower latency option for Bluetooth audio on Linux? After my old Anker speakers went belly-up° I “upgraded” to their latest model which I didn’t realize was aux/3.5mm-free and have been suffering ever since from horrendous lag when using the external speakers to stream movies on my Linux laptop. ° Ok, in actuality my kid broke half a…

Was latency ever an issue with movies? I know mine works without issue on pulseaudio+bluez by delaying the video to sync it with audio (which is actually noticable with an old noname speaker when you pause/play the video - the video stalls, then (i guess) the audio buffers are filled, and movie starts playing with syned a/v, and then when pausing, maybe half a second of audio is still played after you've paused it).

Re: PipeWire: Bluetooth Support Status Update

#12

I’ve only heard good things about PipeWire so I must ask: will this finally give me a lower latency option for Bluetooth audio on Linux? After my old Anker speakers went belly-up° I “upgraded” to their latest model which I didn’t realize was aux/3.5mm-free and have been suffering ever since from horrendous lag when using the external speakers to stream movies on my Linux laptop. ° Ok, in actuality my kid broke half a…

Was latency ever an issue with movies? I know mine works without issue on pulseaudio+bluez by delaying the video to sync it with audio (which is actually noticable with an old noname speaker when you pause/play the video - the video stalls, then (i guess) the audio buffers are filled, and movie starts playing with syned a/v, and then when pausing, maybe half a second of audio is still played after you've paused it).

Definitely an issue with Netflix on Ubuntu. Enough that I prefer to “obtain” via other means the content I have paid access then watch it in mpv (where I must still manually introduce a video delay).

The delay you describe should be only as long as it takes for the audio packet to be processed by the audio stack as the video syncs with the audio and not the other way around. But I don’t think Bluetooth blocks for an ack of each packet (and if it did, you’d be delayed the other way because of the time it takes for the response to reach after the packet has finished playing)!

The half second of audio playing after you pause can be explained by the same delay I describe: that’s how long of a lag there is between source and sink (like you say, due to buffering - plus the transmission delays).

Re: PipeWire: Bluetooth Support Status Update

#13

Earlier quoted context omitted.

Yeah, if it works with the PA tools, then you're using pipewire-pulse. If you aren't using WirePlumber, try it out, as pipewire-media-session doesn't work as well and is more of a reference implementation than an end-user product.

I found when Fedora switched to wireplumber it made bluetooth much less reliable. Every time I connected my headphones I had to restart wireplumber multiple times for them to connect. Haven't tried it for a few months though, maybe it's improved.

Wireplumber looks much more wonky to me than media-session, so I'm deferring the switch for now. Wireplumber's design seems flashy and not guided by experience or good taste to me, the opposite of Pipewire proper.

Re: PipeWire: Bluetooth Support Status Update

#14

Earlier quoted context omitted.

Yeah, if it works with the PA tools, then you're using pipewire-pulse. If you aren't using WirePlumber, try it out, as pipewire-media-session doesn't work as well and is more of a reference implementation than an end-user product.

I found when Fedora switched to wireplumber it made bluetooth much less reliable. Every time I connected my headphones I had to restart wireplumber multiple times for them to connect. Haven't tried it for a few months though, maybe it's improved.

I have the same issue on the latest Fedora. It's very disappointing that bluetooth connectivity isn't a solved problem in 2022 (at least on Linux, haven't noticed any issues in Windows for a while). Are we ever going to get to a point where bluetooth "just works"?

Re: PipeWire: Bluetooth Support Status Update

#16

Since I switched to pipewire I've had the best Linux audio end-user experience with BlueTooth devices, ever.

PipeWire supports the most audio codecs of any desktop operating system, period. Windows and Mac don't have LDAC, Mac doesn't have aptX, etc.

Re: PipeWire: Bluetooth Support Status Update

#17

I’ve only heard good things about PipeWire so I must ask: will this finally give me a lower latency option for Bluetooth audio on Linux? After my old Anker speakers went belly-up° I “upgraded” to their latest model which I didn’t realize was aux/3.5mm-free and have been suffering ever since from horrendous lag when using the external speakers to stream movies on my Linux laptop. ° Ok, in actuality my kid broke half a…

There are protocol limitations here. There have been very recent advances, that bring us to 40~60 ms, but they all root in Bluetooth 5 (officially announced july 2016 but holy fucking shit this adoption has been trashfire slow especially on pc) and it's incredibly confusing/difficult to understand which if any codecs have been able to take advantage of this possibility. It'd take me probably an hour to put together the basics on how available this is right now.

But that should not affect your use case; playing movies should work fine, period, end of statement. The fact that there is latency to your speaker is something that an bluetooth or other audio pipeline should know, should be able to compensate for. PulseAudio (which your music players are almost certainly using, under pipewire or other) has great understanding of latency built in. If you do experience big audio latency, open up pavucontrol & adjust your device's latency, and that problem should go away. It should be semi-stable. But pulseaudio & pipewire both should, in a wide range of cirumstances, understand what the expected latency is & "just work."

If you are on a videoconference, however, knowing that there's a second of latency doesn't help, won't bring things closer to real-time. It's still gonna be terrible. Newer specs, newer codecs could help significantly, but the audio daemon won't be able to help. Pulseaudio did have higher latency by default, tuneable (i think i'd tuned to using 2 frames of 16ms each = 32ms, pretty aggressive), but I think they've trimmed it significantly in very recent releases, but pipewire's architecture has allowed it to be significantly more aggressive.

Re: PipeWire: Bluetooth Support Status Update

#19

Since I switched to pipewire I've had the best Linux audio end-user experience with BlueTooth devices, ever.

PipeWire supports the most audio codecs of any desktop operating system, period. Windows and Mac don't have LDAC, Mac doesn't have aptX, etc.

Definitely, having just bought some XM4s I was kinda taken aback by having LDAC automatically pop up in my audio settings. Very neat to see support being that seamless!

Re: PipeWire: Bluetooth Support Status Update

#20

Earlier quoted context omitted.

I found when Fedora switched to wireplumber it made bluetooth much less reliable. Every time I connected my headphones I had to restart wireplumber multiple times for them to connect. Haven't tried it for a few months though, maybe it's improved.

I have the same issue on the latest Fedora. It's very disappointing that bluetooth connectivity isn't a solved problem in 2022 (at least on Linux, haven't noticed any issues in Windows for a while). Are we ever going to get to a point where bluetooth "just works"?

Relevant XKCD: https://xkcd.com/2055/
Post reply on HN