As long as pipewire comes with jack and pulse "emulations" to get audio applications to work, one kind of crap seems to be replaced by another kind of crap, at least for now. I don't see this as particularly encouraging for new linux users. On the contrary: linux audio is currently even more obscure than before, imo.
Continuing the jack/pipewire debate...
Moderators: raboof, MattKingUSA, khz
-
- Established Member
- Posts: 66
- Joined: Mon Jul 02, 2018 9:11 pm
- Has thanked: 6 times
- Been thanked: 21 times
Re: Continuing the jack/pipewire debate...
If your current system is working for you, cool. No need to switch. But eventually, you're probably going to want to upgrade, and the major distros are mostly adopting Pipewire. I came to Pipewire reluctantly. Ubuntu adopted it, and therefore I had it. I figured I would uninstall it and go back to ALSA/JACK, but I thought I'd try it first.
Largos wrote: ↑Sun Oct 29, 2023 12:40 pmIf you've already learnt how to deal with these things then great but lets not pretend they are perfect and couldn't have been done better. If you sit someone down who has never used Linux for audio before, they will have an easier time with Pipewire as it cuts a lot of the crap out that either experienced users have got over or that caused people to uninstall and not bother. You don't have to have a way to switch JACK on, you don't have to run a script to connect pulse to JACK. Most people can't/don't want to deal with things like this and they will just go somewhere else. You don't have to care about that stuff at all with Pipewire.
Exactly. If you're the kind of person who likes installing and manually configuring a bunch of stuff by hand, cool. I am that kind of person as well, but I also understand the point of eliminating needless complexity. Think about the the steps that have typically been recommended/required to configure a Linux system for serious audio use:
Install a low-latency kernel
Set up realtime permissions
Install and configure JACK
Either setup a JACK sink, or deal with the cumbersome process of switching audio servers, or just accept that you're not going to be able to watch YouTube on the same machine that you use for production
This is all pretty forbidding to someone starting out. From an outside perspective, this does indeed appear to be rather broken in that it is a rather manual process that involves some fairly arcane knowledge. I get it - people are used to it, and I did it myself for years, but it doesn't have to be that way. Pipewire eliminates the need for the last two items. Moden kernels and hardware are taking care of the first two. Of course there are some great distros that set most of that up for you (I used to use Ubuntu Studio myself), but not everyone starts out on a distro like that.
-
- Established Member
- Posts: 66
- Joined: Mon Jul 02, 2018 9:11 pm
- Has thanked: 6 times
- Been thanked: 21 times
Re: Continuing the jack/pipewire debate...
Impostor wrote: ↑Sun Oct 29, 2023 1:34 pmAs long as pipewire comes with jack and pulse "emulations" to get audio applications to work, one kind of crap seems to be replaced by another kind of crap, at least for now. I don't see this as particularly encouraging for new linux users. On the contrary: linux audio is currently even more obscure than before, imo.
From a developer's perspective, I agree. For now, emulating legacy APIs is necessary because that's what we've got. When properly set up, it's completely transparent to the user with no performance hit. You just have Pipewire doing its thing, apps think they're talking to PulseAudio or JACK, and an end user doesn't even have to know or care that ALSA/JACK/PulseAudio even exist.
-
- Established Member
- Posts: 2329
- Joined: Sat Jun 21, 2014 8:37 pm
- Been thanked: 257 times
Re: Continuing the jack/pipewire debate...
matyas wrote: ↑Sun Oct 29, 2023 2:37 pmThink about the the steps that have typically been recommended/required to configure a Linux system for serious audio use:
Install a low-latency kernel
Set up realtime permissions
Install and configure JACK
Either setup a JACK sink, or deal with the cumbersome process of switching audio servers, or just accept that you're not going to be able to watch YouTube on the same machine that you use for production
It's been many years since that was true for a linux musician keeping current with whats available. (I remember Ubuntu Studio 8.06, blazing along with zynaddsubfx. ) Those who have not been watchful, or are new to computer based music in general, face similar or worse lists setting up a windows music system, and macs, if affordable for someone, face product management happy to denegrate the older systems to quasi doorstop status in the home music producer market. Refreshing the affordability decisions.
You also use the term 'upgrade', when sometimes, in the studio, upgrade can mean a costly side-grade, with the same end results musically.
Newer that is not individually tested first, can create a downgrade demanding an expensive redo, measured perhaps in valuable man-hours
Pipewire might be a great success. Time will tell, and time doesn't often hurry
-
- Established Member
- Posts: 2329
- Joined: Sat Jun 21, 2014 8:37 pm
- Been thanked: 257 times
Re: Continuing the jack/pipewire debate...
matyas wrote: ↑Sun Oct 29, 2023 2:44 pmWhen properly set up, it's completely transparent to the user with no performance hit. You just have Pipewire doing its thing, apps think they're talking to PulseAudio or JACK, and an end user doesn't even have to know or care that ALSA/JACK/PulseAudio even exist.
I sure hope that 'no performance hit' is not the goal. That's just spinning the wheels.
You mention 'when properly set up', which implies user configuration duties, as so many diverse systems exist.
We already have that feature, too.
The whole "know or care that ALSA/JACK/PulseAudio even exist." thing, is true already in most daily use cases. But in some cases,
I want or need to know those details for proper decision making. Not to mention hardware/software/midi interconnectivity.
I don't want a warm fuzzy windows-like audio blanket. I could be in the minority, but have walked that trail for many moons.
Pipewire may be great for most people. And I have backups of backups of backups, so a distro's future choices are no big deal.
Lindows 12 has a nice ring to it
Cheers
.
.
.
.
.
.
.
(my shrink hinted that forum 'discussions' might be good for my agoraphobia )
-
- Established Member
- Posts: 66
- Joined: Mon Jul 02, 2018 9:11 pm
- Has thanked: 6 times
- Been thanked: 21 times
Re: Continuing the jack/pipewire debate...
glowrak guy wrote: ↑Sun Oct 29, 2023 9:52 pmI sure hope that 'no performance hit' is not the goal. That's just spinning the wheels.
You mention 'when properly set up', which implies user configuration duties, as so many diverse systems exist.
We already have that feature, too.
No, superior performance is the goal. Equivalent performance has already been achieved. But I think things are only going to get better.
As far as the "properly set up" bit goes, I think that in most cases that responsibility should fall on the distro. On Pop_OS!, and presumably other Ubuntu-like distros, very little configuration should be required. In my case, I enabled "Pro Audio Mode" and edited one line in a config file. The last step was more or less optional, and I agree that ideally it should be handled by a utility. I also find PWGraph to be a better routing utility than Carla.
The whole point isn't to replicate the Windows experience on Linux - I would argue that PulseAudio did a better job of approximating the mess that is WDM - and yes, configuring a Windows box for audio is at least as miserable an experience as anything in the Linux world.
The point is to make things transparent. Do you worry about your network or USB drivers? (I know that some people do, and that's fine.) Most people don't, and audio should be as painless as all that. If you want to go around tweaking config files and messing with daemons, cool, that's one reason why many people use Linux. (And I spent years doing it myself.) But the whole point of Pipewire is to provide great performance out of the box for those who don't.
- GMaq
- Established Member
- Posts: 2831
- Joined: Fri Sep 25, 2009 1:42 pm
- Has thanked: 530 times
- Been thanked: 576 times
Re: Continuing the jack/pipewire debate...
Largos wrote: ↑Sun Oct 29, 2023 12:40 pmIf you sit someone down who has never used Linux for audio before, they will have an easier time with Pipewire as it cuts a lot of the crap out that either experienced users have got over or that caused people to uninstall and not bother. You don't have to have a way to switch JACK on, you don't have to run a script to connect pulse to JACK. Most people can't/don't want to deal with things like this and they will just go somewhere else. You don't have to care about that stuff at all with Pipewire.
Well, let's be honest, not really... PipeWire has some solid merits indeed but lets not put on rose-colored glasses..
Let's say your Distro comes with PipeWire in a good solid recent version, you are new to Linux and you want to try Ardour but your stems to import are all at 44.1Khz.. PipeWire's default is 48000Khz and Ardour is either going to blunt force convert the sample rate on import or it's going to accommodate on the fly which is a worse option so if you just want to get the system running at 44100Khz you're going to either have to bang open a terminal and incant some pipewire-metadata command which as a newbie you will neither want to open a terminal nor will probably have no idea what command to enter. Other than that unless your Distro ships a PipeWire metadata GUI (most don't yet) you're going to have to go into the system file tree with a text editor and then tell PipeWire you want 44100Khz in one of many obtusely named config files..
If you succeed in that the next launch of Ardour is still going to yell at you because your User doesn't have security limits permissions and as a new User you're going to have to figure out what that means, what 'groups' are and how to add yourself to a 'pipewire' group that Ardour's cryptic warning will not give you any clue of and you will not think of on your own..
Next you'll most likely want to screw down the latency which without a pre-installed GUI is also going to mean a trip to the terminal or a system-wide config mod at least at first.. Sure you can copy the configs to your Home folder but this again is not trivial for a new Linux User.
To be fair yes, perhaps a step or two less than configuring a JACK/Pulse system from scratch but a Ubuntu Studio or any other Production-ready OS will likely have most of that done.. As an example in AV Linux the base configuration of the ISO build is for everything to work and be fully routed as soon as the Audio device is selected.
PipeWire is capable of a lot of cool stuff, but please don't blow smoke that it's install-and-go for serious Audio work because it's just not..
- Largos
- Established Member
- Posts: 639
- Joined: Mon Oct 05, 2020 12:21 pm
- Has thanked: 72 times
- Been thanked: 186 times
Re: Continuing the jack/pipewire debate...
@GMaq
If you use ALSA mode with Ardour, you can change the project sample rate to what you like in the setting. When switching between sessions with different sample rates, the audio settings dialogue comes up again, click start and the project loads. No need to go into config files. The same goes for buffer settings.
- GMaq
- Established Member
- Posts: 2831
- Joined: Fri Sep 25, 2009 1:42 pm
- Has thanked: 530 times
- Been thanked: 576 times
Re: Continuing the jack/pipewire debate...
Largos wrote: ↑Mon Oct 30, 2023 1:42 am@GMaq
If you use ALSA mode with Ardour, you can change the project sample rate to what you like in the setting. When switching between sessions with different sample rates, the audio settings dialogue comes up again, click start and the project loads. No need to go into config files. The same goes for buffer settings.
If you use ALSA mode without a special environment prepended launcher to tell Ardour to specifically use 'pipewire-alsa' (another thing a Linux newbie will have no clue about having to create) then indeed you can hook into the Audio hardware at the driver level and set your parameters (this is how I always use Ardour) but then you are circumventing PipeWire and are into the age old problem of Ardour hogging the Audio device and neutering PipeWire as effectively as it neuters PulseAudio in the same situation..
Look I'm not trying to go full curmudgeon mode here... I agree if Distributions did a better job of setting up PipeWire's defaults and included some commonly required GUI tools it would be unassailable... My bone to pick is your supposition about it's defaults for Pro Audio work in the hands of a completely new Linux Audio User. To a new User it doesn't offer a meaningfully better 'install and use' experience and a far worse experience than most common Audio Dists..
- GMaq
- Established Member
- Posts: 2831
- Joined: Fri Sep 25, 2009 1:42 pm
- Has thanked: 530 times
- Been thanked: 576 times
Re: Continuing the jack/pipewire debate...
I have read that but really don't fully comprehend what it means in daily use, As far as Audio playback through Media Players or Video Editors I've never had a sync issue and even recording a webcam with a screen capture program I've never had a sync issue, so I'm curious how people are using this function of PipeWire and how it is noticeably better..?
Is this for things like Zoom or Skype etc..?
- Largos
- Established Member
- Posts: 639
- Joined: Mon Oct 05, 2020 12:21 pm
- Has thanked: 72 times
- Been thanked: 186 times
Re: Continuing the jack/pipewire debate...
GMaq wrote: ↑Mon Oct 30, 2023 2:57 amIf you use ALSA mode without a special environment prepended launcher to tell Ardour to specifically use 'pipewire-alsa' (another thing a Linux newbie will have no clue about having to create) then indeed you can hook into the Audio hardware at the driver level and set your parameters (this is how I always use Ardour) but then you are circumventing PipeWire and are into the age old problem of Ardour hogging the Audio device and neutering PipeWire as effectively as it neuters PulseAudio in the same situation..
Look I'm not trying to go full curmudgeon mode here... I agree if Distributions did a better job of setting up PipeWire's defaults and included some commonly required GUI tools it would be unassailable... My bone to pick is your supposition about it's defaults for Pro Audio work in the hands of a completely new Linux Audio User. To a new User it doesn't offer a meaningfully better 'install and use' experience and a far worse experience than most common Audio Dists..
Well, I did not use the phrase "Install and use" and I didn't say anything about Distributions needing to do a better job with defaults. I am using OpenSuse Tumbleweed and it's set up fine. I don't think anything anywhere offers "install and use" you have to do some form of configuring. I was saying you don't need to do any steps just to turn the thing on in the first place. You reference some particular issue of sample rates that most people won't deal with, I don't see the point. Especially as most the problem is because JACK nukes a lot programs when you change settings, so you have to close everything and reload the server. Hence why you can't change the settings in the audio programs that would actually work in Pipewire.
At least you've tried it though, unlike 95% of people who I've seen moaning about Pipewire.
-
- Established Member
- Posts: 2083
- Joined: Mon Sep 28, 2015 8:06 pm
- Location: Here, of course!
- Has thanked: 232 times
- Been thanked: 400 times
- Contact:
Re: Continuing the jack/pipewire debate...
AFAIK it's not jack that's the problem, but programs that check setting once when they start, then assume they'll never change (and yes, Yoshimi is guilty of that when in standalone mode). I think pipewire fiddles the figures so programs think they've got the same setup - but don't quote me on that.
- sysrqer
- Established Member
- Posts: 2527
- Joined: Thu Nov 14, 2013 11:47 pm
- Has thanked: 320 times
- Been thanked: 153 times
- Contact:
Re: Continuing the jack/pipewire debate...
I'm not sure about that, I know in Bitwig you can change the sample rate and block size in the program so it certainly doesn't think that it's running the same setup, and I think VCV can do this as well.
- Largos
- Established Member
- Posts: 639
- Joined: Mon Oct 05, 2020 12:21 pm
- Has thanked: 72 times
- Been thanked: 186 times
Re: Continuing the jack/pipewire debate...
folderol wrote: ↑Mon Oct 30, 2023 2:53 pmAFAIK it's not jack that's the problem, but programs that check setting once when they start, then assume they'll never change (and yes, Yoshimi is guilty of that when in standalone mode). I think pipewire fiddles the figures so programs think they've got the same setup - but don't quote me on that.
From what I can see and this is not a technical assessment in any way, you start JACK and it connects to the hardware and remains connected so the settings can only be changed when JACK is turned off. With pipewire, when no applications are connected then the connection is automatically broken with the hardware. That's what it looks like anyway, when I have no audio programs active the LED on my firewire device shows not connected whilst with JACK it was permanently on with it.