59
Pipewire vs PulseAudio, general question
(lemmy.world)
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
I have had some problems with PipeWire as JACK replacement, mostly it was some tearing artifacts that were very annoying. Recently though I learned how to use PipeWire (which is great for general desktop audio usage + works with Bluetooth really good) with JACK for pro-audio applications. By using the JACK DBus detect module it is possible to turn PipeWire into JACK client when ever the latter one is started.
So this way it is not required to use PulseAudio at all with JACK. There's also possibility to use PipeWire as JACK server because it also provides such API.
I’ve been running Pipewire in pro audio setup for my son and his band mates since the early days of the project. Granted I did run into some issues at first, but for a long time now it has been solid as a rock. With all of the plugins it is a joy to work with, no more Jack, Jack 2, Alsa, Pulse bridging and configuration nonsense, it all just ‘works’ now.
I would recommend it to anyone as a first option when setting up anything audio related on Linux now.
I believe that PipeWire is really solid piece of software, but I couldn't just let go of JACK just yet. JACK just works and it's easy to modify important parameters like sample rate or buffer size. On PipeWire I still don't know how to quite do that, I get lost in all those configuration files, but I will get it someday.
Also one more thing that might be niche, but it's important for me is JACK timecode (for synching i.e. a DAW with video player) which PipeWire doesn't support at all at the moment. Getting it work on PipeWire (converting JACK timecode to LTC or MTC) gets ugly pretty quickly. So I'm glad PipeWire allows to use it however I like it, either as JACK server or client.