View Single Post
Old 08-20-2018, 12:40 PM   #27
Jack Winter
Human being with feelings
Jack Winter's Avatar
Join Date: Aug 2007
Location: Luxembourg/Spain
Posts: 1,863

Originally Posted by Glennbo View Post
USB might be an issue for me then, because I monitor through the DAW 100% of the time, even if I'm just jamming around on a guitar or bass. I monitor through a lot of FX on occasion as well, and never had any issues with laggy performance or artifacts in the audio. Maybe I'll just keep using my dinosaur cards that I bought when Windows 98 was king.
Here is a recent post I made with tested loopback latency at various buffers/periods. AFAIK this is typical for USB on linux, and I'm not sure that this is going to change:

I'm down with that! BTW, if the IRQs end up like they were in Windows, both of the 2496 cards are sharing IRQs with other stuff. One is sharing with USB, and the other with the video card, but again that was in Windows, and I presume were soft IRQs.
In that case I'd advice to skip udev-rtirq, at least until I've fixed the issue with shared interrupts... In any case rtirq ought to do the same thing for you, as you won't be able to hotplug your cards.

Here's the output.

0 [MID ]: HDA-Intel - HDA Intel MID
HDA Intel MID at 0xf9ff8000 irq 32
1 [M2496 ]: ICE1712 - M Audio Audiophile 24/96
M Audio Audiophile 24/96 at 0xec00, irq 16
2 [NVidia ]: HDA-Intel - HDA NVidia
HDA NVidia at 0xfbcfc000 irq 17
3 [M2496_1 ]: ICE1712 - M Audio Audiophile 24/96
M Audio Audiophile 24/96 at 0xe400, irq 17
Install zita-ajbridge, and try "zita-a2j -d hw:M2496_1" for inputs and"zita-j2a -d hw:M2496_1" for outputs. As you have the cards externally synced you can also try the alsa_in/out utilities mentioned above.

You might also want to start qjackctl to get a display showing if there are any xruns. Reaper's performance page also has something called RT biggest block. The first value should stay under the second, as if it exceeds it then not all audio got read/written.

It should also be possible to create a combined device using alsa user space, but I have no idea how that works when a system has pulseaudio installed and would have to google how to do that. It would probably be the better long term solution as then you wouldn't have to run the above utilities

As the system is running right now, I have open a stock ticker that is constantly hitting the net and parsing data, an NNTP newsgroups reader, Thunderbird mail, Firefox web browser and a bunch of other things running, and all the while looping over and over in the background, my test song in REAPER, playing without the slightest hiccup.
Here again it might be advantageous to run qjackctl and check rt cpu and rt biggest block on the reaper's performance page. I think it also has a xrun counter that would be good to enable. An alternative would be to remove the jackd command line from the device config page, and run it in a terminal as it would show the xruns. IIRC there is also an undocumented flag that one can add to reaper.ini that will make the RT longest block sticky, otherwise I think it resets every one in a while. All this to make sure that there aren't xruns that you don't really hear, or don't notice while doing other stuff.

I scanned my entire system volume and found no existing rtirq.conf file. Should there be one, or is this one I need to create myself?
Sorry I misled you On ubuntu it's apparently in /etc/default/rtirq, the beauty of many distros changing things around... On my archlinux system it's in /etc/rtiq.conf.:S

If you already rebooted, just run rtirq status and see what it says, you ought to see the soundcards at the top with high priorities. Otherwise you have to add the threadirqs boot flag in your boot managers config file.
Reaper for Linux Documentation (WIP). Software: Archlinux/KDE, Fabfilter FX, Komplete 8, Nebula, Schwa/Stillwell, T-racks Max/Amplitube/SVX, etc. Gear: i7-2600k/4700HQ/16GB, RME Multiface/Babyface, Behringer X32, Genelec 8040, etc. :)
Jack Winter is offline   Reply With Quote