|
|
Subscribe / Log in / New account

PipeWire: The Linux audio/video bus

PipeWire: The Linux audio/video bus

Posted Mar 3, 2021 4:32 UTC (Wed) by darwi (subscriber, #131202)
In reply to: PipeWire: The Linux audio/video bus by Subsentient
Parent article: PipeWire: The Linux audio/video bus

> Nobody liked Pulseaudio, but I hope the transition here goes a whole lot smoother than the ALSA to Pulseaudio one did.

I had no space left in the article to further expand on this, so I'll write it here: breaking users audio was not always PulseAudio's fault. It was the first heavy user of a certain class of ALSA APIs like audio buffer rewinding; e.g., snd_pcm_rewind() and friends. The proprietary Adobe flash plugin, prevalent back then, also caused its own unique set of problems.

Nonetheless, yes, PulseAudio (and especially its glitch-free support) was pushed too early on users. "I'll break your audio", the constant tongue-in-cheek remark by PulseAudio's lead developer back then, did not also always help. Humility, and some sympathy for users with broken audio setups, were definitely lacking.

The good news is that the community as a whole learned a lot from the ALSA→PulseAudio transition fiasco. Remember that everyone is also more than a decade older now… Everyone is (hopefully) a little-bit wiser.

By the way, the PipeWire developers are keenly aware of the previous audio API transition issues. This was discussed at length in the PipeWire 2018 hackfest: an adults-in-the-room orderly PulseAudio→PipeWire transition was planned early-on. I'm personally optimistic :) [Famous last words?]


to post comments

PipeWire: The Linux audio/video bus

Posted Mar 3, 2021 4:48 UTC (Wed) by Subsentient (subscriber, #142918) [Link] (2 responses)

>Remember that everyone is also more than a decade older now… Everyone is (hopefully) a little-bit wiser.

You think so?

PipeWire: The Linux audio/video bus

Posted Mar 4, 2021 6:12 UTC (Thu) by darwi (subscriber, #131202) [Link]

> You think so?

Posting an empty comment that is just a link to a GIF meme does not contribute to a healthy discussion. Assuming that you were posting in good faith, then the answer is yes, I do (based on interactions with a lot of active developers across the stack.)

PipeWire: The Linux audio/video bus

Posted Mar 11, 2021 10:21 UTC (Thu) by oldtomas (guest, #72579) [Link]

Besides, your link wants me to "do" some javascript to see the gif. My browser was too lazy, so I didn't see anything. Perhaps I'm glad I didn't :-P

PipeWire: The Linux audio/video bus

Posted Mar 3, 2021 13:44 UTC (Wed) by pizza (subscriber, #46) [Link] (2 responses)

> The good news is that the community as a whole learned a lot from the ALSA→PulseAudio transition fiasco. Remember that everyone is also more than a decade older now

It's probably more accurate to say that a _huge_ number of ALSA and application[+library] bugs were uncovered and fixed during the early PA days, and that work continues to pay dividends, making future migrations much easier.

(The main technical reason for the ease of the PA->PW migration is that PA and PW both provide ALSA plugins so that software natively using the ALSA API continues to JustWork, and of course PW provides a drop-in PA library replacement..)

PipeWire: The Linux audio/video bus

Posted Mar 4, 2021 4:14 UTC (Thu) by darwi (subscriber, #131202) [Link] (1 responses)

> It's probably more accurate to say that a _huge_ number of ALSA and application[+library] bugs were uncovered and fixed during the early PA days, and that work continues to pay dividends, making future migrations much easier.

Yes, of course. I thought this was implied. I meant also "wiser" in the technical sense.

> (The main technical reason for the ease of the PA->PW migration is that PA and PW both provide ALSA plugins so that software natively using the ALSA API continues to JustWork, and of course PW provides a drop-in PA library replacement..)

It's not only about that.

Anyone can implement compatibility layers; e.g., roaraudio reimplements the PulseAudio APIs. On the ALSA compatability side, ALSA plugins are actually the simplest part of the equation: it's usually a single C file with some hundred lines of code + a 10-line configuration file.

As discussed in the article, how PipeWire is internally designed is actually what helps a lot. Don't underestimate how a proper initial rigorous design makes things much smoother at the later adoption and transition stages of any software project. A proper design makes everything "fit into place".

PipeWire design and code is semantically simpler than PulseAudio; in part, because everyone got wiser. Anyone who has worked inside the PulseAudio code base for a while will know what I mean here ;)

PipeWire: The Linux audio/video bus

Posted Mar 5, 2021 14:22 UTC (Fri) by ecree (guest, #95790) [Link]

> PipeWire design and code is semantically simpler than PulseAudio; in part, because everyone got wiser.

Sounds like PipeWire may be an example of third-system effect. A good sign.

PipeWire: The Linux audio/video bus

Posted Mar 3, 2021 16:55 UTC (Wed) by HenrikH (subscriber, #31152) [Link] (1 responses)

> Nonetheless, yes, PulseAudio (and especially its glitch-free support) was pushed too early on users

I'll beg to differ, the only reason that the ALSA drivers where ultimately fixed, that PA became usable and that software started to use PA was that it was pushed out to all users as early as it was. Had it not been done this way then PA would be closer to where Wayland is today and PipeWire would have been decades away in the future.

The real QA for any software projects only comes on the day that you get it pushed to end users, it doesn't matter how much internal QA you have done.

PipeWire: The Linux audio/video bus

Posted Mar 4, 2021 21:26 UTC (Thu) by marcH (subscriber, #57642) [Link]

> The real QA for any software projects only comes on the day that you get it pushed to end users, it doesn't matter how much internal QA you have done.

There's always an infinite supply of bugs. If you ever run out of them, just test harder and you will get more. It's a continuum.

Once you ran out of sensible use cases, pass it on to a security team.

PipeWire: The Linux audio/video bus

Posted Mar 5, 2021 7:00 UTC (Fri) by WolfWings (subscriber, #56790) [Link] (3 responses)

I'll be honest, PulseAudio headaches kept being so bad and responses soured me so hard on the platform that I'm still using native ALSA instead with PulseAudio not even installed at all on my systems.

They REALLY burned bridges with their attitude and flippant responses in a way few understand, and with many ALSA sound card drivers supporting multiple programs attaching at the same time the main 'requirement' for PulseAudio has become moot at this point for simple laptop or desktop audio use.

PipeWire: The Linux audio/video bus

Posted Mar 6, 2021 1:52 UTC (Sat) by BirAdam (guest, #132170) [Link] (2 responses)

I actually use OSS4. I was mad enough with ALSA’s release, and then Pulse came out and OSS had been fixed in the mean time so I went back.

PipeWire: The Linux audio/video bus

Posted Mar 6, 2021 1:58 UTC (Sat) by pabs (subscriber, #43278) [Link] (1 responses)

Is OSS4 still developed?

PipeWire: The Linux audio/video bus

Posted Mar 6, 2021 5:22 UTC (Sat) by BirAdam (guest, #132170) [Link]

Indeed. Yes.

http://opensound.com/


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds