07-06-2021, 10:56 AM | #1 |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
[ARCHIVED] Pro Audio on Manjaro (and other Arch-based) Setup Guide
EDIT: This guide has now been archived. Visit https://forum.cockos.com/showthread.php?t=277496 for discussion of the vanilla Arch-based guide or directly at https://github.com/chmaha/ArchProAudio
I've been meaning to write a setup guide for getting low-latency professional audio on Manjaro and after a bit of procrastination, here it is: https://github.com/chmaha/ManjaroProAudio It will be an ongoing exercise as I fill in detail etc. In this initial state, I simply documented every step I took getting a vanilla Manjaro install ready for my usual audio work. Feedback welcome! Last edited by chmaha; 03-25-2023 at 02:40 AM. |
07-06-2021, 08:35 PM | #2 |
Human being with feelings
Join Date: Jun 2014
Location: Ohio
Posts: 981
|
Thank you! Once I get Manjaro and Windows 10 running side by side (I've come up against some issues that I am documenting in another thread), I'll be sure to follow your instructions. I'm especially keen on getting yabridge running...
__________________
Pre-order my new ambient album on vinyl/cd/cassette |
07-07-2021, 12:33 PM | #3 |
Human being with feelings
Join Date: Sep 2018
Location: Oxford, England
Posts: 219
|
I think its important to point out to potential new users that while these are things you can do - just like you can fine tune Windows systems for audio - they are not things you necessarily have to do in order to get setup for (pro)audio on Linux. After all
Code:
git clone https://github.com/ ... Fortunately a stock distro with no custom tweaks (I use an Ubuntu LTS) and Reaper for Linux is likely all you you need to get going, with audio performance at least equal to if not better than other OS. The good news is that with Linux if there are improvements you think might be necessary once its up and running, then - as the setup guide illustrates - there are plenty of options. |
07-07-2021, 02:46 PM | #4 |
Human being with feelings
Join Date: Aug 2011
Location: Near a big lake
Posts: 3,943
|
I agree with Mike that while having that info all in one place (and updated) is good, most of these tweaks probably aren't necessary for most people. Here are a few which I found important for low-latency audio in Reaper (or other DAW), probably for anyone:
1) Use a realtime or low-latency kernel (Manjaro by default now has a low-latency kernel anyway) 2) CPU governor set to performance 3) for USB audio devices, disable USB_autosuspend so they don't glitch out when using ALSA And for Manjaro specifically, for now (until the bug is fixed): Code:
sudo systemctl enable fstrim.timer Of course once you install Wine and Yabridge, there are more considerations. If you plan to use Jack and run multiple applications together, there are even more considerations. It'd be nice for people to know it doesn't have to be complicated to set up a distro for audio use, that mostly you'd do the same things you'd do in other OSes (#2 and #3 above), and from there, it depends. It'd be great if it were organized like that (basic necessities for low-latency stability in a DAW, considerations when using Jack, and considerations when using Yabridge/Wine). I admire your effort, but be prepared to stay on top of it. Some of that info is bound to need updating, and probably sooner than later. |
07-07-2021, 03:03 PM | #5 | |
Human being with feelings
Join Date: Mar 2008
Location: Planet Earth
Posts: 9,098
|
Quote:
systemctl status fstrim.timer Comes back with this, and I didn't enable it myself. fstrim.timer - Discard unused blocks once a week Loaded: loaded (/usr/lib/systemd/system/fstrim.timer; disabled; vendor pre> Active: inactive (dead) Trigger: n/a Triggers: fstrim.service Docs: man:fstrim Edit: Hmmm, looks like trim is maybe not needed on my new NVMe M.2 drive. Will have to do more digging. Last edited by Glennbo; 07-07-2021 at 03:13 PM. |
|
07-09-2021, 01:29 AM | #6 |
Banned
Join Date: Dec 2018
Location: Texas
Posts: 138
|
Will Mankato support ieee1394 devices? Using ffado?
|
07-09-2021, 01:33 AM | #7 |
Banned
Join Date: Dec 2018
Location: Texas
Posts: 138
|
See OpenSUSE should have something like this.
|
07-09-2021, 12:56 PM | #8 |
Human being with feelings
Join Date: Jul 2009
Location: Germany
Posts: 2,375
|
Thank you for the guide, BethHarmon!
|
07-11-2021, 02:35 AM | #9 |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
|
07-11-2021, 02:42 AM | #10 |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
Why, thank you!
The good news is that if I miss something that changes (quite possible since I'm no longer distro-hopping and setting up a new system regularly), anyone interested can post an issue as and when things crop up. There's nothing like encouraging community action |
07-11-2021, 07:05 PM | #11 |
Human being with feelings
Join Date: Nov 2009
Posts: 2,232
|
|
07-19-2021, 06:05 AM | #12 |
Human being with feelings
Join Date: Aug 2007
Location: Near Cambridge UK and Near Questembert, France
Posts: 22,754
|
@BethHarmon: Does your set of instructions allow for installing wine, etc too?
P.S. Thanks for this help!
__________________
Ici on parles Franglais |
07-19-2021, 06:40 AM | #13 | |
Human being with feelings
Join Date: Aug 2011
Location: All Hallows End
Posts: 2,132
|
Quote:
I just had a quick look, the instructions are a short page. Wine and Yabridge are mentioned towards the bottom. Step 11. Last step. All steps seem short, clear, concise. Thanks to BethHarmon! This should help me out greatly. Last edited by maxdembo; 07-19-2021 at 06:47 AM. |
|
07-20-2021, 02:11 PM | #14 |
Human being with feelings
Join Date: Aug 2011
Location: All Hallows End
Posts: 2,132
|
Manjaro downloaded. I'll give this a whirl on the RPi4 later...
|
07-20-2021, 02:30 PM | #15 |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
|
07-20-2021, 07:48 PM | #16 |
Human being with feelings
Join Date: Aug 2011
Location: All Hallows End
Posts: 2,132
|
Thanks!
Installed. Manjaro seems a lot more user friendly than the Pi OS. Not having to use Terminal to update everything is already very handy. |
07-22-2021, 02:11 PM | #17 | |
Human being with feelings
Join Date: Aug 2011
Location: Near a big lake
Posts: 3,943
|
@Beth:
You might be aware of this already, if you're still in the process of adding content to your guide. If not though, just in case: Step 4 in your guide is missing information. Your step has the user loading an editor, doing nothing, then updating grub. What's needed: Quote:
I'd recommend an addition to your guide: disable usb_autosuspend if you're using a USB audio device. It's critical for many devices, including but not limited to Focusrite Scarlett 3rd generation (the current models). I use TLP to set that parameter (in etc/tlp.conf: USB_AUTOSUSPEND="0") It might also be handy to explain how to add a user to the realtime group. Last edited by JamesPeters; 07-22-2021 at 02:39 PM. |
|
07-22-2021, 05:46 PM | #18 |
Human being with feelings
Join Date: Oct 2014
Posts: 84
|
should i install this real time kernel?
https://imgur.com/m8mkodC.png |
07-23-2021, 01:07 AM | #19 |
Human being with feelings
Join Date: Aug 2011
Location: All Hallows End
Posts: 2,132
|
Genuine question... Considering the above quote, what would be the point in installing a different low latency kernel?
|
07-23-2021, 07:26 AM | #20 |
Human being with feelings
Join Date: Mar 2008
Location: Planet Earth
Posts: 9,098
|
I ran the kernel that Manjaro installed by default until I had been updated so many times that Manjaro kept notifying me that I should get a newer kernel, so I chose the newest one that was not realtime or experimental, and all is well.
|
07-23-2021, 06:15 PM | #21 |
Human being with feelings
Join Date: Aug 2011
Location: All Hallows End
Posts: 2,132
|
So kernels can be out of date, and dont get updated with other updates the OS puts out, and need to be updated separately. OK.
Still learning here |
07-23-2021, 06:49 PM | #22 |
Human being with feelings
Join Date: Aug 2011
Location: Near a big lake
Posts: 3,943
|
It's a bit weird, but other OSes will update parts of their "kernel" too, or not. It's a bit more transparent with Linux and you have the option to update/upgrade or not. That's the real difference.
If you use an LTS kernel (long-term support), you'll get what's considered critical updates to it. People who are concerned about "stability" will stick with an LTS kernel, choosing to only change what's considered necessary. If you look for changelogs for kernels, 5.10 has a changelog and the newer ones don't. That's since the other ones are just kind of "abandoned" in development as a newer version comes out. You get the new kernel, or stick with the current one...but you're not getting bugfixes for that non-LTS kernel until you update to a new one. Getting LTS kernel updates, compared to installing a new non-LTS kernel to get bugfixes, the difference might not be that much. It's probably a larger download the latter way, with more potential for problems (technically speaking), but it hasn't caused me an issue yet. I currently use the latest experimental kernel because it has full support for Focusrite Scarlett device functionality. 5.13 and below don't (and won't, even the LTS version). Normally I use the latest non-experimental kernel to get whatever new stuff it has, whether I think I need it or not. I'm not worried about rolling back a kernel if I have to; I can keep an older kernel installed and switch back to it from the boot menu if I need to. (Currently I have 5.13 as my backup kernel, since it was working fine for me before I switched to 5.14 rc1.) Realtime kernels lag behind the rest, but not so far at least in Manjaro. If the RT kernel offered a performance increase I could reliably notice, I'd switch to it again. The default kernel in Manjaro is low latency though, and it seems to perform approximately the same. So I move on to later kernels and leave the "old" ones behind including the RT ones. |
07-23-2021, 06:58 PM | #23 | |
Human being with feelings
Join Date: Aug 2011
Location: All Hallows End
Posts: 2,132
|
Quote:
|
|
07-24-2021, 02:56 AM | #24 | |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
Quote:
|
|
07-24-2021, 08:05 AM | #25 |
Human being with feelings
Join Date: Aug 2011
Location: Near a big lake
Posts: 3,943
|
I'm sure it won't be needed for every USB audio device, but this is a well known thing for other OSes too. It should be included in the guide and if you want, with a note about how it can decrease battery power of a laptop but can be important to prevent periodic dropouts (so a person can be aware what to look for if they choose to avoid the step).
|
07-24-2021, 08:55 PM | #26 |
Human being with feelings
Join Date: Mar 2017
Posts: 861
|
If someone has a spare few minutes, could you try to install Rakarrack, or 'Rakarrack +' multi-effects, and timemachine jackd-based audio recorder in an Arch or Arch spinoff? Or relate applicable success stories? These may be old or odd, but I'd like to use them in arch based Garuda linux, but using bauh package manager, there are compiling issues. I promise to be nice to old feral cats and French Poodles, for a whole year, if I can get these working!
http://rakarrack.sourceforge.net/dl.html https://github.com/dtimms/rakarrack https://github.com/Stazed/rakarrack-plus https://github.com/swh/timemachine |
07-31-2021, 07:13 AM | #27 |
Human being with feelings
Join Date: Aug 2011
Location: All Hallows End
Posts: 2,132
|
Making my way thru this, and as an almost complete novice, with no idea what half the instructions mean, or are, its been confusing but I've progressed.
There are a few steps that I'm still a bit confused about, but I'll give it all another go and ask my stupid questions afterwards |
08-01-2021, 02:08 AM | #28 |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
I'll check back in soon to see if I can answer your questions.
FYI, I added wine-staging installation above the alternative wine-tkg install. Wine-staging might be my new preferred option given ease of install and the fact that it seems to have had a dramatic and positive effect on REAPER's offline rendering speeds while using WinVSTs. That part needs further investigation though. |
08-01-2021, 02:52 AM | #29 |
Human being with feelings
Join Date: Aug 2011
Location: All Hallows End
Posts: 2,132
|
Nice one, thanks.
I came back to it with a fresh head today and figured loads of stuff out. I am question free atm And then my keyboard died, going back to it in a bit. |
08-15-2021, 11:58 AM | #30 |
Human being with feelings
Join Date: Aug 2007
Location: Near Cambridge UK and Near Questembert, France
Posts: 22,754
|
Another big thank you, Beth. I have been busy on other things but am now going to have a go at installing Manjaro with your help.
Much appreciated.
__________________
Ici on parles Franglais |
08-28-2021, 04:04 AM | #31 |
Human being with feelings
Join Date: Aug 2012
Location: Around Montréal
Posts: 1,117
|
Any reason why KDE over XFCE ? Is it audio related or just preference ?
|
08-28-2021, 11:52 AM | #32 |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
Not really. I've tried both and find KDE/Plasma a better overall experience. I was a long-time XFCE user on MXLinux thinking that KDE was a resource hog but that's really not the case these days.
|
08-29-2021, 02:05 AM | #33 |
Human being with feelings
Join Date: Oct 2019
Posts: 4
|
thank you, very usefull !!
until last week i use linux mint, but now thanks to you i have a better experience on manjaroo ! |
08-29-2021, 11:44 AM | #34 | |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
Quote:
I have every confidence that my distro-hopping has come to an end The only other distro I might try down the road is Arch but I'm in no hurry and only if Manjaro disappears. |
|
08-31-2021, 08:15 PM | #35 |
Human being with feelings
Join Date: Mar 2009
Posts: 87
|
Hi Beth,
THANK YOU for creating and sharing the 'Pro Audio in Manjaro' guide. I was able to successfully run Reaper with some Windows VSTi's! So cool! I am a linux newbie and have some feedback and questions from this newbie perspective: IMHO, it's not obvious that one needs to run the 'Konsole' app to execute the commands given. STEP #2: ./realtimeconfigquickscan did not work for me; but the following did: perl ./realTimeConfigQuickScan.pl Reported 3 'not goods': i) ..in the audio group (addressed after all steps performed) ii) ...prioritize processes with chrt (addressed after all steps performed) iii) ...kernel with Real-Time Preeemption (still reports this after all steps, is this OK?) STEP #3 it's not obvious that 'yay' needs to be installed, which I did via the 'Add/Remove Software' tool STEP #6 a) is '/etc/sysctl.d/99-sysctl.conf' expected to be empty? it was for me and it felt like I had done something wrong... b) it is not clear if the string to add includes the double quotes (I did not include them, maybe a lucky guess) STEP #8 make install - did not work for me; I had to change to sudo make install - also, I was asked to change make to qmake, which I answered NO STEP #10 - it is not obvious that Jack needs to be running (qjackctl -> Start) for Reaper to recognize STEP #11 - it is not obvious that 'winecfg' needs to be run after installing wine-staging so that the '/home/$USER/.wine' folder (and its subfolders) are created; these paths are referenced in the yabridge usage instructions - as of this writing, wine staging needs to be downgraded to v6.14 per https://github.com/robbert-vdh/yabridge#tested-with which states there are incompatibilities with v6.15 and v6.16. Downgrading (per https://github.com/robbert-vdh/yabri...wngrading-wine) involves: a) installing 'Downgrade' (which I did via 'Add/Remove Software' tool), then b) sudo env DOWNGRADE_FROM_ALA=1 downgrade wine-staging Last edited by MusicMan74; 09-02-2021 at 05:29 AM. |
09-02-2021, 01:56 PM | #36 |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
Thanks for these comments. As it turns out, I have just had to do a fresh install of Manjaro KDE so will follow my own guide from start to finish to see what happens. If something doesn't work, I will be sure to fix it.
For now: 1) I've always run ./realtimeconfigquickscan with zero problems. 2) winecfg doesn't need to be run at all. Whatever executable runs will invoke all the config stuff. That has been my experience, at least. 3) As for your remaining "not good" in the realtimeconfigquickscan, you need to look at step 4 again and check threadirqs is where it should be in the grub file. You might also be running a kernel that doesn't have that flag enabled. Have you tried the latest kernel? I remember there was a weird omission with the LTS release not too long ago. |
09-02-2021, 02:01 PM | #37 |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
Fixed some typos and added some more info. In step #2, for example, it should read ./realtimeconfigquickscan.pl to execute the script (definitely no perl needed in front in that case).
EDIT: I've run through the list and everything works as intended including realtimeconfigquickscan being entirely satisfied. As noted above, I've fixed some small typos and added some extra information for certain steps (for example, using downgrade to install wine-staging v6.14). https://i.imgur.com/ibbM28B.png I'm on Manjaro "Pahvo" 21.1.1 (KDE) running the 5.13.12-1 kernel. Last edited by chmaha; 09-02-2021 at 02:53 PM. |
09-05-2021, 09:28 AM | #38 | |
Human being with feelings
Join Date: Aug 2011
Location: Near a big lake
Posts: 3,943
|
Note: kernel 5.14 is now officially released, out of RC status. Like the RCs though, fsync is currently disabled for some reason. Robbert van der Helm (Yabridge) found the line in the kernel which has this feature disabled, reported the issue, and provided the following info for anyone wanting to enable fsync:
Quote:
Code:
curl -o linux514-5.14.1-1-x86_64.pkg.tar.zst -L https://files.catbox.moe/hqeyjc.zst echo '9a41eadd529bc4d4885ec12bf471a540241790d66251e43c1eb3e1811d75e472 linux514-5.14.1-1-x86_64.pkg.tar.zst' | sha256sum -c && sudo pacman -U linux514-5.14.1-1-x86_64.pkg.tar.zst |
|
09-05-2021, 11:02 AM | #39 | |
Human being with feelings
Join Date: Oct 2013
Location: Argentina
Posts: 1,303
|
Quote:
Thanks so much, James! Still on 5.10, but itś very useful to have this info available... I see now that the Add/Remove Software offers me an update of the 5.10 series, not the 5.14 one. In this case, it's much better to avoid the hassle, but, is it normal? And, apart from the fsync issue, am I missing something of real importance by staying on 5.10? I'm not updating the system quite often, really, and I prefer to do it from time to time, only when I see it really needs it... Last edited by Soli Deo Gloria; 09-05-2021 at 11:08 AM. |
|
09-05-2021, 11:17 AM | #40 | |
Human being with feelings
Join Date: Feb 2021
Posts: 2,289
|
Quote:
|
|
Thread Tools | |
Display Modes | |
|
|