/srv/irclogs.ubuntu.com/2018/09/04/#ubuntustudio-devel.txt

OvenWerksI would point out that rtirq does not change the priority of irqs, It changes the priority of the second half of the irq drivers which are driver specific rather than irq specific.00:01
JackWinter1OvenWerks: yes ofcourse, its just easier saying it like that18:16
JackWinter1or should i revisit the documentation of my utility?  maybe i've taken the same liberty there :)18:17
OvenWerksJackWinter1: the difference is important in the case where a device shares irq (probably 16) with other things. rtirq gives each device on that irq a different priority.19:36
OvenWerksJackWinter1: unfortuately it tends to still raise the priority of devices not listed that _should_ be at 50.19:37
JackWinter1yes19:39
OvenWerksJackWinter1: A thought I have is to present a warning screen or at least an info screen that details what devices any audio device we are using shares irqs19:39
JackWinter1i'm still not shure what is the best way of handling that.  but once it's in the thread the top half is done, and the threads are preemptable19:40
JackWinter1so for our purposes the other devices using the same irq are probably not important19:41
OvenWerksit depends on if we are using only one audio device or more19:41
OvenWerksFor example, midi devices are always separate19:41
OvenWerkseven in a combo-device that has both audio and midi19:42
JackWinter1several soundcards sharing interrupts, that's an intriguing scenario19:42
OvenWerksthat is not quite what I meant :)19:42
JackWinter1i know :)19:42
JackWinter1my babyface has only one interrupt19:43
OvenWerksI am thinking an audio card that shres with a mouse and another. if the one that shares with a mouse is at 95 and the mouse therefore ends up at 90 then the second audio card might be at 8519:43
JackWinter1you are talking about usb?19:44
OvenWerksusb, pci, fw whatever.19:44
OvenWerksagain this is a problem with rtirq, not your sw... (which I have yet to test)19:45
JackWinter1if 2 devices share the same interrupt say soundcard and an usb root hub, i'd be inclined to change only the thread that services the soundcard19:46
OvenWerksright19:46
OvenWerksrtirq is old stuff from when pci audio cards were king19:46
OvenWerksIt works great for that19:47
JackWinter1it's part of the reason i wrote this, as i don't like how rtirq does it, and because it doesn't work for hotplugging cards19:47
JackWinter1as it is right now, it only cares about soundcards, nothing else19:47
OvenWerksone of the troubles I have with rtirq is raising the priority for my NIC (to play with AVB/aes67), rtirq runs before my NIC shows up.19:49
JackWinter1you could run rtirq once again manually?19:50
JackWinter1i suppose this utility could be adapted to deal with other things too19:51
OvenWerksYes, and I do, but rtirq does not reorder priorities, it just jams the NIC where it can.19:51
JackWinter1but then it starts getting complicated ;)19:51
JackWinter1imo, you ought to prune the config to the minimum...19:51
JackWinter1i never saw a reason for many usb interrupts to get a higher priority than nic/hdd/etc19:52
OvenWerksI don't know the NIC handling code that well, but the i210 does a lot of processing on it's own anyway. 19:52
JackWinter1and the infamous rtc...  on my systems it fires exactly once on boot19:52
OvenWerksnormally a NIC should not be raised at all19:53
JackWinter1maybe in your case it's useful, i don't know19:53
OvenWerksbut to use with avb or aev67 we want to use the timer on the NIC to syn audio clock19:53
JackWinter1there is also the old chrt -f -p 98 `pgrep nameofthread`19:54
JackWinter1you can run that from a script starting your daw or something like that19:54
OvenWerksin these cases the NIC _is_ the audio device.19:56
JackWinter1so udev sees it like an audio device or a network card?19:56
OvenWerksNIC19:56
OvenWerksBut there is so much stuff to set up that the driver should be able to do it's own prioritizing I guess19:57
JackWinter1actually how well does that work?  i'm considering looking into avb/aes67 for my next card19:58
JackWinter1have no idea if it works at all on linux though19:58
JackWinter1think i've seen some posts from people experimenting, maybe you one of them19:58
OvenWerksI should look at the avb code.20:01
OvenWerksthere is no avb/aes67 driver that could be called finished and easy to use20:02
OvenWerksavb can get sound from jack to jack for sure.20:02
OvenWerksI would think it should be possible to go from another end point to/from jack as well20:03
OvenWerksbut everything is manual setup20:03
OvenWerksMy thought on either avb or aes67 is to use the timer from the NIC (ptp server) to time a jack dummer back end and then connect remote audio as jack client20:05
OvenWerkss/dummer/dummy/20:05
JackWinter1ah i see, i'm more interested in connecting a soundcard to my linux machine20:06
OvenWerksthe jack client should not need SRC as it derives it's sync from the same ptp server20:06
OvenWerksyes this would connect an avb sound card to linux... through jack20:07
OvenWerksin my case my linux machine sees jack as my audio card anyway.20:07
OvenWerksreally in both cases, the stuff to get audio from one place to another is all there, it is just missing the glue to discover and connect.20:09
* OvenWerks is gone for a few minutes20:09
OvenWerksJackWinter1: basically, all the avb audio IFs I know about also connect via USB. For aes67, it is dante units run in aes67 mode, so less useful.20:42
OvenWerksI think the fire has gone out of the Audio device support in Linux people. Basically anything that works for mac works for Linux with the USB drivers so why work on anything more? There is not even BT audio any more for alsa... of course BT through pulse works and BT is about as reliable as pulse, so using PA as an output to bt is probably acceptable :P20:45
JackWinter1heh, and latency sucks with usb compared to on windows :S20:52
OvenWerksouch20:53
JackWinter1maybe you are right.  we'll see what happens in the future.  i suppose we ought to be grateful that there is class 2.0 audio in any case, otherwise what would many users use20:53
OvenWerksusb mics should die...20:53
JackWinter1though i ran into a guy that hacked the snd-usb-audio driver so that you can modprobe some extra parameters, made the latency overhead very little even at big buffer sizes, so it appears even class 2.0 could work much better on linux :S20:55
OvenWerksbut on the other hand, -controls deals with them nicely now :)20:55
JackWinter1https://aur.archlinux.org/packages/snd-usb-audio-lowlatency-dkms/ if you are interested20:55
OvenWerksI can do 16/2 at 48000 with no xruns over night20:56
JackWinter1i still have to test that patch more, but it makes my rme baby face work nearly as good latency wise on linux as on windows20:56
OvenWerks(with my old PCI delta 66)20:56
OvenWerksusb should be able to do 16/3, but I think 32/2 is as good as most people can get.20:57
JackWinter1that's not really a useful test, the question is what happens when you throw dsp load on it, and load down the machine otherwise...  that's when xruns start turning up20:57
JackWinter1i'd be happy with 64-128/2 with low additional latency :)20:58
JackWinter1brb, i've gotta test the kernel i reconfigured :)20:59
JackWinter1beh, i copied .config to . and not config, so now i can build it again :S21:04
JackWinter1so basically i messed it up and can build it all over again :)21:05
OvenWerks:P21:11
OvenWerksThere seems to be a "it's as good as it gets" attitude in linux audio. Xruns? increase latency... rather than finding out why.21:12
JackWinter1yes, i suppose that snd-usb-audio caters to the worst case so sucks for all cards...21:20
JackWinter1but i suppose we are really a small minority trying to produce music on linux...21:21
OvenWerksI don't think that is the whole story, I think there is a lot of variability in MB circuitry as well.21:22
JackWinter1i have no idea about the usb protocol, but the above patch really works miracles with the right values for my babyface, latency close to that on windows..21:23
OvenWerksmany people use lap tops for audio work and so it is hard to say use a dedicated PCIe SUB card as an example as compared to FW days when people very definately would get a fw card that was known to work well/best21:23
JackWinter1the the most important being max_packs_hs set to 121:23
OvenWerks:P my fingers at work s/SUB/USB/21:25
OvenWerksOne just has to look at the big users of USB to understand how drivers are set up... how fast can I transfer my pictures?21:28
OvenWerkshow fast can I back up my drive to USB, etc. It is all about max throughput, latency should be at least lower than 30ms... That attitude does not help audio at all.21:30
JackWinter1no, but surely the snd-usb-audio driver is for audio :_)21:49
JackWinter1too bad that it seems not to be working optimally21:49
OvenWerksI was talking about the underlying USB code.21:49
JackWinter1well with the patch i got quite decent performance out of it21:50
OvenWerksgood stuff.21:50
JackWinter1didn't write down the values, but hang on let me find a post21:50
JackWinter1check out the improvement: https://forum.cockos.com/showpost.php?p=2021776&postcount=1721:52
JackWinter1i saw similar results21:53
JackWinter1iirc (lol it was a few days ago), i can write the new values in the sys file system and disable/enable the usb device in sysfs too, and then it just works better, but have no idea what it might break on other machines or usb soundcards21:55
OvenWerksThat is always the problem21:55
JackWinter1well i'm egoistical enough to be happy to solve my own problems :)22:05
OvenWerksI have some of that, but I like to help others too... In their case "good enough" is less good than for me.22:06
JackWinter1time to see if this kernel helps anything ;)22:11

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!