I'm coming off of an entire weekend spent trying to get acceptable latency for audio recording in Linux. Just a midi controller to play a simple 3x oscillator VST with better than 250ms latency was my test case.
I tried different versions of Ubuntu, Debian, different kernels, different window managers, different graphics drivers, stripping things out of the system etc.
After going down the rabbit hole, I finally ripped out pulseaudio and replaced with ALSA.
In Windows or MacOS I would have been up and running immediately.
Now I'm completely burnt out and the creative urge is long gone.
Linux is my daily driver and I love it, but my god, some things are still way more fucking difficult than they need to be.
It reminds me of screwing around 20 years ago with wifi ndiswrapper stuff or multimonitor xrandr incantations.
With both OS you eventually have problems and if you are willing to solve them you can put a lot of time and effort into doing so. The only difference is the openness of the system. With Linux, you can easily go much deeper (for many reasons: community, available source code, multiple implementations for different system components, custom kernels). But don't get me wrong: More options aren't necessarily better, because it can take a lot longer until you run out of options.
> In Windows or MacOS I would have been up and running immediately.
Over the years, I have thought so too sometimes, but every time that I tried, I had to tinker with Windows too (not necessarily to solve the same issue, but then something else)...
Yeah I definitely hear you. For me, the tinkering was just in application settings, never the actual Windows OS settings or configuration. Out of the box, worked good enough. After getting into a full project and trying to monitor and record multi channels, etc, then yeah, there is some deep diving to be done.
Look the Audio stack on linux is broken but, and I am an audio engineer by study and trade, windows has it's own collection of hell when it comes to audio.
"Just use asio"? Had a borked driver cause blue screens on bootup for a piece of hardware, talking 5 digit price tag hardware... Same driver randomly doesn't present an Asio device.
Want to stick to "windows default audio engines" well, wasapi is what you should use now right? KS has the best latency ( wasapi should be calling that under the hood ), how about the other 3 options?
When it "just works" it's great. When it doesn't you cannot "dig in and find you need to go directly to ALSA(the KS alternative for linux)" because the driver you have loaded may not even present a KS interface, if your DAW even allows you to use something which isn't ASIO...
I have my faie share of pain with audio on windows, I wouldn't trade that pain for audio on linux granted but honestly, never had a single issue on macOS...
You had audio latency issues and instead of googling "Linux audio latency", you spent several hours installing distributions, kernels, graphics drivers (?), and UIs (??). You could have avoided this by doing what any windows user would have done in your situation.
>This article describes how to configure your system for recording, mixing and playing back audio as well as using it to synthesize and generate sounds. Those activities are subsumed under the term professional audio (pro audio) and typically require low latency performance.
I then I noticed screen tearing in my browser (fresh install of Ubuntu 22.04).
Oh ok, well maybe I've got the wrong drivers and it's eating CPU.
Run all the tests to ensure I have the right Nvidia drivers. All checks out.
Then I find something about hybrid graphics mode. Sure enough, I needed to set my graphics to discreet mode in the BIOS. Screen tearing is now gone.
Well now that I'm on it, why don't I move to LXDE from Gnome? Can't hurt right?
No dice.
I look up my laptop. Find that only 20.04 is "officially" supported by Lenovo. Ok, well I need to install that now to rule that out.
While I'm waiting for that to install, I stumble upon real time kernels, apparently popular for audio stuff.
Try that, marginally better but latency is now unstable. Switch kernels again.
Now I dig into Reaper settings. There are tons of things that can improve latency (that I'm also familiar with). Bitrates, buffers, sample rates, etc.
This is all to say I didn't think I'd have to change whatever the hell pulseaudio is to ALSA. Why should I have to do anything? I don't in Windows.
This whole thing was a project to get myself off of Windows and my point is it shouldn't be this hard. I've used various DAWs in Windows over the last 20 years and it was never difficult.
If you're sticking with linux for audio, go ahead and crib a little from AVLinux[1] or UbuntuStudio[2]. I feel like with all the modern "conveniences", things that were simpler two decades ago have gotten a lot harder!
I did Ubuntu Studio in the beginning and had the same problem with JACK not working so bailed on it as I'm not familiar and didn't want all the bloat. That's where I got the idea to try a different kernel.
> trying to get acceptable latency for audio recording
> In Windows or MacOS I would have been up and running immediately.
I watched a couple of videos yesterday by musicians using Ableton on their new Apple M3 Max laptops with latest MacOS, talking about how it was dropping audio frames audibly during live performances
I don't think it's safe to assume MacOS would reliably solve your audio latency problem. You may have to experiment.
For a single basic VST? Yes it would. I'm not talking about full projects. I'm familiar with the things you need to tweak to get optimum performance, but Windows and MacOS can handle 1 instrument out of the box. Almost 500ms latency in 2024 without poking around is absurd.
I only ask because I too had audio issues with Ubuntu LTS and Debian (both stable and unstable in hopes to get newer packages) in the past. I never got past the problems I had so I reverted back to Windows but if I go down that rabbit hole again I'd likely try Arch just to see what happens.
This is whats stupid about linux. Every time someone raises a specific issue , someone invariably suggests X or Y distro, which may fix that one thing, but break other 5. It seems I'd need to n install 5 different distros in my Dell Latitude to have Bluetooth, Sleep, Webcam, hibernation and fingerprint all working correctly. And somehow use one or the other depending of what breakage can I stand at the time.
I did years ago over a weekend and had a laptop running it for a while. Something went wrong and I ended up breaking it. Just way more familiar with Debian and friends.
In that vein, I ended up looking into Linux from scratch this weekend. I'd love to have a laptop that runs reaper and that's it.
Someday, but for now, a minimal Ubuntu install is doing the trick for what I need.
I'd recommend jack audio connection kit if that's your use case. You can generally get the best latency performance that your card has to offer, and the jack connection graph is superlative, in my opinion.
I tried different versions of Ubuntu, Debian, different kernels, different window managers, different graphics drivers, stripping things out of the system etc.
After going down the rabbit hole, I finally ripped out pulseaudio and replaced with ALSA.
In Windows or MacOS I would have been up and running immediately.
Now I'm completely burnt out and the creative urge is long gone.
Linux is my daily driver and I love it, but my god, some things are still way more fucking difficult than they need to be.
It reminds me of screwing around 20 years ago with wifi ndiswrapper stuff or multimonitor xrandr incantations.