[HN Gopher] PipeWire 1.0.0
       ___________________________________________________________________
        
       PipeWire 1.0.0
        
       Author : shallow-mind
       Score  : 146 points
       Date   : 2023-11-26 18:43 UTC (4 hours ago)
        
 (HTM) web link (gitlab.freedesktop.org)
 (TXT) w3m dump (gitlab.freedesktop.org)
        
       | lupusreal wrote:
       | Much love for Pipewire for bringing "just werks" audio to the
       | Linux desktop.
        
       | shmerl wrote:
       | Good milestone. Switching to PulseAudio over Pipewire from stock
       | PulseAudio fixed audio issues in Cyberpunk 2077 for me.
        
       | egamirorrim wrote:
       | Shame my strix soar soundcard just stopped working when I
       | switched to Ubuntu 23.10/pipewire
       | 
       | Doesn't feel like a worth successor to pulse audio from here!
        
         | shmerl wrote:
         | Just a guess, but Ubuntu might ship outdated pipewire packages.
        
           | ric2b wrote:
           | On 23.10 they use pipewire 0.3.79 which I think is the latest
           | stable release before this brand new 1.0 release.
        
         | imp0cat wrote:
         | I'd wait till the next LTS.
        
       | mrlonglong wrote:
       | It's such a massive relief to be using something that wasn't
       | written by Poettering. PulseAudio was a train wreck when it was
       | first released. Others took it over and got it working. Now with
       | pipewire, it does things a lot better than PulseAudio ever did.
        
         | ratsmack wrote:
         | But now, what are we going to do with systemd?
        
           | galcerte wrote:
           | Unlike PulseAudio, dbus, and other userland components, it is
           | perfectly possible to have a Linux system which works with
           | most software without systemd. runit and OpenRC are two of
           | the most popular init alternatives, which are _just_ inits,
           | and nothing else, unlike systemd. You might argue you have to
           | use logind and udev, but that has been spun off into elogind
           | and eudev. There is also seatd as an alternative to elogind,
           | which is quite big itself.
        
           | Levitating wrote:
           | Just use it? I am still confused why systemd is supposedly
           | something that needs to be fixed. Like all major
           | distributions "accidentally" switched to it.
        
             | ratsmack wrote:
             | They all switched because of commercial interests, not
             | because everyone loved it.
        
               | kaba0 wrote:
               | These takes are just ridiculous. Debian, with a more
               | democratic system than any country on Earth, voted
               | _twice_ over the issue, overwhelmingly supporting the
               | support of only systemd. How is that commercial interest?
               | Then arch decided for the same thing independently. I'm
               | sure arch linux is the core interest of every commercial
               | vendor, right?
               | 
               | Just accept it, package maintainers had enough of the
               | absolute shitty state of init systems. Systemd solves
               | this very complex problem elegantly, giving some standard
               | userspace can depend on.
        
               | mrlonglong wrote:
               | That's quite true I'll give you that. But there are still
               | issues with it. It keeps swallowing up bits like resolver
               | and others. It should only do one thing well.
        
               | kaba0 wrote:
               | It only swallows those things up if you consider KDE
               | swallowing up painting programs like Krita. Systemd is
               | both a program, a collection of programs.
        
               | zlg_codes wrote:
               | Systemd adherents cannot seem to get past this deficiency
               | in the software's messaging.
               | 
               | Same with Wayland. "it's not a program it's a protocol"
               | 
               | Still sucks, still is a thorn in my side and gets in the
               | way.
               | 
               | Systemd is an attempt to consolidate the OS/service layer
               | into one thing. Compilation options don't mean shit when
               | every component is tightly coupled to systemd, its
               | journal, dbus, or some other quackery.
               | 
               | Systemd would have been better as an entire distro to
               | itself.
               | 
               | But as usual, people cannot handle the idea of running
               | anything other than what's shoved in their faces from
               | _corporate_ programmers.
               | 
               | If I wanted corporate software I'd buy Apple or
               | Microsoft.
        
               | kaba0 wrote:
               | So as usual, we get nothing useful or remotely objective
               | from "systemd-haters".
        
               | zlg_codes wrote:
               | Your terms are impossible to meet. The moment I reach one
               | goal, you'll invent another. Not worth it my dude.
               | 
               | I am doing something about it by researching ways to
               | excise Red Hat from as much of the tech stack as
               | possible. Can't do much about the kernel, but every layer
               | above it is moldable.
               | 
               | I don't care to provide 'usefulness' to you; if you're
               | not paying me why would I give up any value?
               | 
               | It was an arrogantly managed project using the guise of
               | standardization to bypass people's social tendencies.
               | People are stupid, so they fell for the 'only consider
               | the code, not our social fuckery!' Hook, link, and
               | sinker.
               | 
               | It really opened my eyes to how ignorant and passive a
               | lot of techies actually are. They're happy to slurp up
               | whatever's advertised to them as the better thing.
               | 
               | Systemd runs my current laptop and I hate having to dive
               | under the hood for anything. In a sysvinit, runit, or
               | OpenRC system, I can achieve things quickly and don't
               | need a book's worth of corporate style documentation to
               | operate my damn system.
               | 
               | Systemd still doesn't support a one-time script on boot.
               | You have to hack together a unit for that. Most other
               | systems just run an rc.local script in /etc!
               | 
               | Binary logs are only useful if systemd is running, and
               | only that version of it too!
               | 
               | Good luck understanding journalctl output. It doesn't
               | capture everything.
               | 
               | Long story short, systemd has not improved a single area
               | of my computing life. I guess I can ogle at a boot time
               | graph. But the main goal seems to be for systemd to take
               | away knowledge of the lower levels of the stack.
               | 
               | Like it or not, open software ecosystems are resistant to
               | standardization by default.
               | 
               | Systemd and dbus and friends would not have bothered me
               | if they weren't coupled with weird ideology about One
               | True Linux or other crap.
               | 
               | Systemd never solved problems for me. I'm sure it solves
               | many business problems but none of them apply to me.
        
               | ric2b wrote:
               | Those are separate binaries under the same umbrella
               | project name, you're not forced to use resolverd if you
               | just want the init system.
        
               | mike_hock wrote:
               | The decision in Debian didn't come that easily. The tech
               | committee was locked in a filibuster over systemd for
               | ages and the votes were 50-50. Then the chair cast his
               | tie-breaker vote in favor of systemd and everyone on the
               | other side flipped their shit.
        
               | kaba0 wrote:
               | The only remotely controversial option was whether they
               | should "explore other alternatives" or not.
        
               | zlg_codes wrote:
               | Yeah, Debian's decision wasn't brutal and ugly. It was
               | all nice and out in the open, no flame wars!
               | 
               | Debian's TR process doomed them to systemd. I don't think
               | they're capable of making an independent decision. Too
               | many hands were in that cookie jar and the corporatists
               | won, for now.
               | 
               | I'm waiting for the software wars to begin. Software
               | that's so opinionated it'll check if PID1 is systemd and
               | tells you 'fuck off' if so.
        
               | NekkoDroid wrote:
               | Ah yes, the commercial interest of Arch Linux
        
               | eternityforest wrote:
               | Seems like the commercial interest was caused by a lot of
               | people loving it.
               | 
               | Most hate seems to be from enthusiast/tinkerer types who
               | want to hand maintain highly customized systems.
               | 
               | Systemd is great for ople who just want a commodity OS,
               | maintained by pros, and kept stock.
        
           | mike_hock wrote:
           | I don't like its hard dependencies on glibc (specifically,
           | with no support for other libc's) and dbus (I'd've preferred
           | Poettering going full nih and developing his own RPC
           | protocol).
           | 
           | Other than that, systemd provides a polished experience, so
           | if you want to displace it you'll have to produce something
           | equally polished and compatible with existing unit files,
           | just as systemd was able to consume ye olde sysv startup
           | scripts.
           | 
           | The only other contender that I'm aware of that isn't just
           | one massive design flaw, is openrc, and it's somewhat
           | inferior to systemd.
        
         | kaba0 wrote:
         | Many (or even most) of the issues with pulseaudio were actually
         | sound _driver_ bugs only being resurfaces by pulseaudio, as it
         | was using them in a more complicated matter. It is pretty
         | unfair to blame Poettering over anything wrong in your life, as
         | many of you do, for some reasonx
        
           | ric2b wrote:
           | How does pipewire work around those driver issues? Could
           | pulseaudio use the same techniques but there was just no
           | development capacity for it?
        
             | kaba0 wrote:
             | These were only true of pulseaudio in the early days of it.
             | They are solved for good, by "simply" fixing the most
             | common drivers. But in general, it couldn't have been
             | solved any other way.
        
         | ric2b wrote:
         | It's quite sad that one person can get this level of hate
         | online just for releasing open source software.
         | 
         | If you don't like his software why are you using it? If it's
         | because your distro uses it shouldn't you try to be convincing
         | them to switch to your preferred alternative, instead of
         | calling out the developer by name on public forums?
        
           | mrlonglong wrote:
           | I don't.
        
           | zlg_codes wrote:
           | It's amazing how much mental gymnastics fools will do
           | defending the guy. Have you met him? Have you seen his smug
           | writing style? Have you seen the talks that he interrupts to
           | take the stage for himself?
           | 
           | Associating with that has a social cost. The funny part is
           | some chodes like to pretend we should only focus on the code
           | and not the people behind it. Those are people who like to
           | hide their agenda in their interpersonal interactions.
           | 
           | His software has a habit of making its way into the common
           | Linux stack, too. Too many coincidences and too much
           | arrogance for someone who should've just shut up and made
           | good projects instead of 'gently pushing'.
           | 
           | He capitalized off his fuckery and now works at Microsoft. So
           | much for Poettering and free software! Lmao
        
         | wholesomepotato wrote:
         | This needs to be said: Every single thing Poettering touched
         | was huge improvement. A great hero of Linux userspace
         | architecture.
        
       | iscream26 wrote:
       | Truly the be-all-end-all for Linux audio servers. All the ease-
       | of-use of Pulse without any of its issues.
        
         | jauntywundrkind wrote:
         | That pipe wire can often meet or beat pro-audio JACK for
         | latency is so elegant & nice. Defeating that compromise of
         | PulseAudio seems like the crowning achievement to me; there's
         | not a lot of other faults or defects I felt with PulseAudio,
         | and I say this as someone who has had sound servers with half a
         | dozen audio cards (mostly USB) I've run off a system, as
         | someone who has streamed PulseAudio from one system to another.
         | 
         | The technical sophistication of PipeWire is almost purely made
         | possible by Linux improving, by the availability of DMA-BUFs
         | for shared memory inter-process work. This wasn't possible when
         | PulseAudio (nee Polyp) was being created; the kernel couldn't
         | do that then.
         | 
         | On top of this modern base, pipewire has done a fantastic job
         | generalizing it's architecture. It's also designed to pipe
         | video. It could conceivably be used to pipe input events, or
         | other arbitrary streams too. This is a cool upgrade that I hope
         | we see more leaning into over time; I hope PipeWire someday
         | becomes so pervasively used for so many reasons that it is even
         | more known, tapped, used, & loved that dbus, the current inter-
         | process nexus of FreeDesktop.
        
           | ahartmetz wrote:
           | > The technical sophistication of PipeWire is almost purely
           | made possible by Linux improving
           | 
           | I'm not sure about that. I guess improvements in ALSA have
           | contributed. But PipeWire was created by none other than the
           | guy who rearchitected GStreamer's foundations after GStreamer
           | had been brittle and prone to crashing for years. I don't
           | think that there was a better person in the Linux ecosystem
           | to do it. It's the second system effect without featuritis,
           | like when some of the Unix people created Plan 9.
           | 
           | Personally, I was not happy with PulseAudio, and I'm very
           | happy with PipeWire. Great, great stuff.
           | 
           | I say that as both a user and somebody who created a
           | prototype for a sound system for an embedded platform on top
           | of PulseAudio that was, AFAICT, abandoned because it just
           | couldn't deliver some things. PipeWire was on the radar at
           | the time but too much in its infancy to use back then. That
           | stopped being the case years ago.
        
             | fiddlerwoaroof wrote:
             | I've had nothing but issues with PulseAudio, leading me to
             | disable it and use plain ALSA (with dmix) on basically
             | every Linux system I've used. I'm excited that it's being
             | replaced, but I no longer use desktop Linux very often.
        
         | odiroot wrote:
         | For me the most awesome part is support for both consumer audio
         | and pro audio profiles at the same time. No messing about with
         | JACK etc.
         | 
         | Everything just works. It might not be as perfect as JACK
         | (getting some rare xruns) but it's just so convenient!
        
       | GloomyBoots wrote:
       | I don't have anything bad to say about PipeWire. It's really been
       | a breath of fresh air. And, as much hate as it gets, so was
       | PulseAudio when it came out. Good to see things moving forward.
        
         | ric2b wrote:
         | I did have some Bluetooth issues that made my headset unusable
         | if I was using a Bluetooth mouse at the same time, but that
         | issue seems to have resolved itself a few weeks ago so now I
         | don't have any complaints either.
        
           | vonjuice wrote:
           | I had issues with audio production, but not anymore. I think
           | this "not anymore" is the key takeaway. It may or may not be
           | ready for _everyone_ right now but it keeps improving.
        
         | zlg_codes wrote:
         | PulseAudio got hate because of the trouble it caused. PipeWire
         | seems less likely to create gigabytes of logging without
         | reporting issues.
         | 
         | There are reasons that things get opposed. It isn't just some
         | irrational juju feeling.
        
       | dither8 wrote:
       | Pipewire for the first time got Pulse and JACK to work together
       | for me. Bravo.
        
       | sroerick wrote:
       | 10 or so years ago I spent a long time customizing a DAW
       | workstation on Arch using JACK and Ardour and a lot of other
       | utilities.
       | 
       | It had a steep learning curve and a lot of configuration but I
       | loved the freedom JACK granted to wire applications to each
       | other.
       | 
       | Is anybody using PipeWire in an audio engineering setup? Or would
       | JACK still be the preferred method here?
        
         | vonjuice wrote:
         | I was using JACK and tried switching to PW at various points
         | and always encountered issues.
         | 
         | Last year I took another chance and made a fresh Arch install
         | on my laptop and went with PW (on previous attempts I tried to
         | switch on an already running system). I had no issues, and in
         | fact it solved some issues I used to have on jack.
         | 
         | Then I did the same on my desktop. I had problems setting up my
         | microphone, but I managed to solve it. Now I have two, very
         | minor issues: sometimes bitwig takes a bit to start the audio
         | engine, or I have to restart the program; and sometimes my
         | audio stops working when I unplug my zoom h1n while the system
         | is running. I rarely do the latter so it's barely an issue.
        
         | jampekka wrote:
         | There are patchbays for PipeWire that allow for wiring like
         | jack. qpwgraph seems to be the most functional. Can use pw-cli
         | too.
         | 
         | Actually it allows wiring also jack applications to pipewire
         | applications and pipewire to jack. I use e.g. "pw-jack ardour"
         | to run ardour and launch pw-jack jconvolver and route inputs
         | and outputs with qpwgraph.
        
       | zlg_codes wrote:
       | I'll wait for software that's not built for Red Hat/IBM/GNOME,
       | thanks.
       | 
       | XDG has gone off the rails with 'portals' and other needless
       | obfuscation of their desktop stack.
       | 
       | If I had the financial security I'd write better alternatives,
       | meant for communities instead of whatever Red Hat wants.
        
       ___________________________________________________________________
       (page generated 2023-11-26 23:01 UTC)