Closed Rippert closed 2 years ago
OK, soon as I remembered the specific help command line options I found this:
guitarix --help-overload
Usage:
guitarix [OPTION…]
All parameters are optional. Examples:
guitarix
guitarix -r gx4-black -i system:capture_3
guitarix -c -o system:playback_1 -o system:playback_2
Switch to bypass mode on overload condition
-I, --idle-timeout=SECONDS starved idle thread probe (default: disabled)
-C, --no-convolver-overload disable overload on convolver missed deadline
-X, --xrun-overload JACK xrun (default: false)
-S, --sporadic=SECONDS allow single overload events per interval (default: disabled)
The -C, --no-convolver-overload
option works, just get a little clicking noise when closing the window, changing presets, etc.
The -S, --sporadic=SECONDS
option doesn't work as it only allows integer seconds, and there are multiple, but isolated, overload events when doing one of these things.
So, let me ask this, can I get rid of the dialog box that jumps up telling me there were ignored overloads?
I've been experimenting with using Guitarix at 2.1 ms roundtrip latency on a raspberry pi.
That's fast, man. Nice.
So, let me ask this, can I get rid of the dialog box that jumps up telling me there were ignored overloads?
Only when you hack the source. In file gx_engine_audio.cpp line 746. Looks like you would get rid of the part:
else {
gx_print_error(
"watchdog",
boost::format(_("Overload ignored (%s)")) % gx_system::atomic_get(overload_reason));
}
The gx_print_error() function pops up the message box.
Thanks Hermann, commenting that line out stopped it. Now there's just a soft clicking when I minimize the window or change presets. Throwing up the error window actually causes a lot of the crackling noise.
OK, I've finally forked Guitarix, and I'm going to try to give you some actual pull requests. If you're OK with that?
So, where do I start looking to add some command line options? Obviously, I want to add one that turns off the pop up warnings. I figure an obscure command line option makes people have to really want to do it, and then they can't complain about not getting the warning.
Yes, that is welcome.
You'll find command line options in gx_system.h/cpp in the class CmdlineOptions
Commit 819c891e9e79106ffea22c4de19494809b4ae26b resolves this issue.
Seems to be a regression on this with the latest commit, b31c5e775c71a196a4f8bd4a9d7ade28ba1c4fac. using the -W switch on the command-line no longer stops the overload-ignored warning box from popping up.
Actually, it could have been an earlier commit than b31c5e775c71a196a4f8bd4a9d7ade28ba1c4fac. That's just the one I built today to test the LV2 plugin changes.
I've put a flag check now directly before we pop up the message, this should avoid it now in any case when the -W switch is set.
That fixed it. Thanks.
I've been experimenting with using Guitarix at 2.1 ms roundtrip latency on a raspberry pi. It does work with some core isolation tricks, even with fairly complex racks that include a speaker IR.
The problem I'm having is that when I try to confine Guitarix to a single core it works pretty well, until some blip in the cpu usage causes the watchdog to declare an overload on jconv_mono. For instance, this happens every time I try to minimize the Guitarix Window.
Is there some way to reduce the sensitivity of the watchdog? If not, maybe you could point me to the section of code that controls the watchdog and I can try some hacking on it.