/srv/irclogs.ubuntu.com/2021/02/26/#ubuntustudio-devel.txt

wonkoHas the actual script changed. If not init.d vs systemd gets a big meh from me. It's fine the way it is unless it actually makes something better00:03
wonkoOvenWerks: So, it looks like rtirq is getting set up correctly on liquorix 5.11 it's just that rtirq status doesn't seem to print it properly13:40
wonkohttps://gist.github.com/bhechinger/0e1cb2b21c04d3eae203f6e1359ba9bb13:42
wonkooooooooooooohhhhhhhh13:54
wonkoI just set the priority of firewire_ohci as well13:54
wonkorunning at 16/2 and did a find / and got only 2 xruns. NICE!13:54
OvenWerkswonko: I had a similar find in 20.04, 2 xruns in the first half hour, then nothing for the next 4 days till I shut it down.14:45
wonkoso it looks like you definitely need to prioritize both firewire *and* firewire_ohci14:46
OvenWerksI think just the OHCI14:46
wonkoright now they are equal (I just manually used chrt to set them up) but I wonder which one should be first in the list14:46
wonkooh?14:46
OvenWerksohci is the one that talks to the device14:47
wonkook, I can do that, but I might just leave both, because why not. :)14:47
wonkowhat's the other one then?14:47
OvenWerkswhatever works14:47
OvenWerksI actually have snd_ice ahead of firewire14:48
OvenWerksbut I am no longer using the ice so I should change that14:49
OvenWerksusing just firewire should be ok as it seems to be the irq*firewire* that it raises14:50
OvenWerks(which is firewire_ohci14:51
OvenWerksThat is, rtirq seems to be smart enough to only choose the irq service blobs14:52
OvenWerkswonko: the big thing I need to address in controls is hot plugged USB devices. I need to find out at plugin time what the irq service blob is for that device14:54
wonkoIs that something you need help with?14:56
wonkoalso, can you paste the output of this on your machine: ps -eo pid,class,rtprio,ni,pri,pcpu,stat,comm --sort -rtprio14:57
wonkoOvenWerks: How do you get x-run counts in studio-controls?15:13
OvenWerkswonko: they are only sine studio-controls startup15:13
OvenWerksthe gui monitors the jack xrun call back15:14
OvenWerkswonko: this is on my list to change though I am thinking I want to move this to autojack and have it comunicate the value to the gui so it could be from the jack startup or from last reset15:15
wonkohow do I access that? I'd like to track the xruns15:15
OvenWerks look at ~/,log/jack/jackdbus.log15:16
OvenWerks(I think... it should be obvious looking in the directopry)15:16
wonkoyeah, I see them there15:16
wonkobut if there is a better way than parsing the log file I'd prefer to do that15:17
OvenWerkswonko: here is the output you asked for above: http://www.ovenwerks.net/paste/prior.txt15:30
OvenWerkswonko: I really should switch firewire and snd_ice... but it seems to work really well and I think I have tried using the ICE through zita at the same time with no problems.15:32
* OvenWerks wanders off to get breakfast for his son15:33
wonkoOk, I see why rtirq status output on liquorix doesn't show everything15:43
wonkothat same ps on liquorix prints out firewire instead of irq/17-firewire15:44
wonkoI wonder why that is15:44
OvenWerkswonko: https://github.com/ovenwerks/studio-controls/issues/3017:38
OvenWerksthat is why xrun stuff will change17:38
OvenWerksEickmeyer[m]: I am starting to find mxmilkiib anoying on the controls issues... There are a number of issues where I have asked for more information but gotten nothing.17:42
Eickmeyer[m]I agree. I kindof saw this from the get-go.17:43
Eickmeyer[m]If it were me, I'd close the issue if he hasn't responded in two months.17:43
OvenWerksEickmeyer[m]: good idea... done18:24
wonkook, so I would need an jack-client to capture xruns?18:24
OvenWerksthat or tail -f ~/.log/jack/jackdbus.log |grep <whatever>18:25
wonkoyeah, i might end up using mtail or something for that but I was hoping to get it from the source.18:26
wonkoActually, this will be a fun dive into using the jack client18:27
wonkoI'll do it. :)18:27
OvenWerksThe jackclient callback may not give much info. I think you can get how late but maybe not which client caused the xrun18:27
wonkohmm, well, we'll find out18:28
wonkoI mostly just need the actual xruns18:28
wonkoto turn into timeseries data18:28
OvenWerkspython or c(**)?18:28
wonkoGo18:28
OvenWerksOk, bye :)18:28
wonkoI *have* been thinking about learning Rust, maybe I'll do it in that.18:29
OvenWerksCompiled would use the same API either way18:29
wonkoyeah18:29
wonkoi'm sure they are both just wrappers around the C library18:30
OvenWerks Actually even the python spi is very close18:30
OvenWerks*API18:30
wonkoEh, I just want to get this done. I'll do it in Go. Rust can wait.18:31
wonkodammit, the go library doesn't have the xrun callback implemented yet. Guess I'll add that.19:42
* OvenWerks wonders what else is missing...19:43
OvenWerkswonko: be aware that in general jackd callbacks can not run any jack calls from within the callback itself19:44
wonkothat's good to know19:45
wonkolooks like it's missing a lot19:45
wonkohttps://github.com/xthexder/go-jack#implemented-bindings19:45
OvenWerksso callback  should be very short... just xrun_hit = xrun_hit + 119:45
wonkoyeah, just hitting the prometheus counter Inc() function19:46
OvenWerksthen your main loop will be if (xrun_hit) { make calls to jack, display xruns whatever}19:46
wonkowhich is literally just what you said. :)19:47
wonkoBAM20:12
wonkocurl --silent localhost:9002/metrics | grep jack20:12
wonko# HELP jack_xruns The total number of XRUNs that have happened20:12
wonko# TYPE jack_xruns counter20:12
wonkojack_xruns 2520:12
wonkowhat is the current place to run stuff after jack as started or is that a wait for the new studio controls request?20:58
OvenWerksThat will be in 2.2.0 (already there)21:02
OvenWerks~/.config/autojack/prestop, poststop, prestart and poststart21:04
OvenWerksHmm, looking at those, right now poststart is right after jack starts but before any bridges are created/connected. Not sure if that is the best place.21:05
OvenWerksThe script has to be +x21:06
wonkook, so I just have to wait for 2.2.0 then, cool21:11
wonkohttps://imgur.com/hCrz0JA.png21:12
wonkoyay! :-D21:12
wonkoAnd here we have it as per time: https://imgur.com/hxXcsDG.png21:32
OvenWerkswonko: now all you need is to have what processes are busy at the time of peak21:33
wonkoyeah, I just need to create a dashboard in grafana that tracks that all.21:34
wonkoAll that data is already in prometheus, I just need to make it something to look at21:34

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