Page 4 of 5

Re: Guitarix on a Raspberry Pi 2

Posted: Sun Mar 05, 2017 7:33 pm
by BruceR
Thanks, I'll convert that into a command line jack command and give it a go.
I'm just starting from scratch (again) trying DietPi.

Re: Guitarix on a Raspberry Pi 2

Posted: Mon Mar 06, 2017 7:50 am
by tramp
Frank Carvalho wrote:I can share the setting I use, and they work. But as I use the dbus version of jack it might not be applicable in your situation.
Notice that, contrary to what I said above, it does start with realtime enabled. But I also have to start Jack externally before I start Guitarix, because it does not work when Guitarix starts jack. Two more things. I use 44.1kHz. 48kHz does not work for Guitarix, and I do not believe that it is just the fact that it processes 9% more instructions per time unit. The CPU is only moderately active. Even doubling the buffer size and latency etc, it still goes into some nasty digital distortion at 48kHz, even with no plugins activated. So for the time being I stick with 44.1kHz. Also, try "soft mode".

Jackd settings from ~/.config/jack/config.xml (which is used by jackdbus). My sound card is an M-Audio Quattro:

Code: Select all

<?xml version="1.0"?>
<!--
JACK settings, as persisted by D-Bus object.
You probably don't want to edit this because
it will be overwritten next time jackdbus saves.
-->
<!-- Thu Dec 15 23:13:07 2016 -->
<jack>
 <engine>
  <option name="driver">alsa</option>
  <option name="realtime">true</option>
  <option name="verbose">false</option>
  <option name="client-timeout">2000</option>
 </engine>
 <drivers>
  <driver name="loopback">
  </driver>
  <driver name="net">
  </driver>
  <driver name="dummy">
  </driver>
  <driver name="netone">
  </driver>
  <driver name="alsa">
   <option name="capture">hw:Quattro,0</option>
   <option name="playback">hw:Quattro,0</option>
   <option name="rate">44100</option>
   <option name="period">64</option>
   <option name="nperiods">3</option>
   <option name="hwmon">false</option>
   <option name="hwmeter">false</option>
   <option name="duplex">true</option>
   <option name="softmode">true</option>
   <option name="monitor">false</option>
   <option name="dither">n</option>
   <option name="inchannels">2</option>
   <option name="outchannels">2</option>
   <option name="shorts">false</option>
  </driver>
  <driver name="alsarawmidi">
  </driver>
 </drivers>
 <internals>
  <internal name="netmanager">
  </internal>
  <internal name="audioadapter">
  </internal>
  <internal name="profiler">
  </internal>
  <internal name="netadapter">
  </internal>
 </internals>
</jack>
/Frank
If you would start jack-dbus, you need to select "other" in the Jack Startup Control widget from guitarix, and enter the compand-line you use to start jack-dbus. Otherwise, guitarix always tries to use jackd without dbus.

The issue at 48Khz must be related to the hardware in use, as guitarix usually runs fine at 48Khz, in fact, it is developed on a machine running at 48Khz.

regards
hermann

Re: Guitarix on a Raspberry Pi 2

Posted: Mon Mar 06, 2017 9:59 am
by Frank Carvalho
It's possible. I always run 48kHz on my main machine, and never had any problems with Guitarix or any other sound software. I also run the sound card at 48kHz on a laptop I have, so the sound card should be allright too. So the issues must arise from the RPi itself and the software running on it, though I can not get any closer.

/Frank

Re: Guitarix on a Raspberry Pi 2

Posted: Tue Mar 07, 2017 9:25 pm
by BruceR
Thanks for the help but annoyingly I'm still getting the same jackd error after a few minutes of playing.

Code: Select all

JACK server starting in realtime mode with priority 90
self-connect-mode is "Don't restrict self connect requests"
creating alsa driver ... hw:1,0|hw:0,0|512|3|44100|0|0|nomon|swmeter|-|32bit
configuring for 44100Hz, period = 512 frames (11.6 ms), buffer = 3 periods
ALSA: final selected sample format for capture: 16bit little-endian
ALSA: use 3 periods for capture
ALSA: final selected sample format for playback: 16bit little-endian
ALSA: use 3 periods for playback
JackPosixProcessSync::LockedTimedWait error usec = 232180 err = Connection timed out
JackEngine::ClientDeactivate wait error ref = 2 name = gx_head_amp
JackPosixProcessSync::LockedTimedWait error usec = 232180 err = Connection timed out
JackEngine::ClientDeactivate wait error ref = 3 name = gx_head_fx
JackPosixProcessSync::LockedTimedWait error usec = 46436 err = Connection timed out
JackEngine::ClientCloseAux wait error ref = 2
JackPosixProcessSync::LockedTimedWait error usec = 46436 err = Connection timed out
JackEngine::ClientCloseAux wait error ref = 3
This has happened with my compiled version of jackd2 and the Raspbian apt version in exactly the same manner. It does not seem to matter what jack settings I use or if I use it in the GUI or not. The only bit that stays the same is alsa and the driver for the (cheap) C-Media USB guitar adaptor. Maybe I should go and buy a Behringer ucg102 or something else.

Re: Guitarix on a Raspberry Pi 2

Posted: Wed Mar 08, 2017 6:48 am
by BruceR
Scratch that, I've got it working. .. :D

In case anyone stumbles on this thread my current working jackd command line is

Code: Select all

/usr/local/bin/jackd -R -P 90 -d alsa -P hw:1,0 -C hw:0,0 -r 44100 -p 128 -n 3 -s
many thanks again for this thread and the individual help

Bruce

Re: Guitarix on a Raspberry Pi 2

Posted: Thu Mar 16, 2017 4:36 pm
by beacolyte
are you still working on this Bruce? Are there any clips of these projects anywhere?

It seems like this is a fairly common project. I am looking for a budget Torpedo C.A.B. type box. Possible?

Re: Guitarix on a Raspberry Pi 2

Posted: Thu Mar 16, 2017 11:29 pm
by glowrak guy
BruceR wrote:Scratch that, I've got it working. .. :D

In case anyone stumbles on this thread my current working jackd command line is

Code: Select all

/usr/local/bin/jackd -R -P 90 -d alsa -P hw:1,0 -C hw:0,0 -r 44100 -p 128 -n 3 -s
many thanks again for this thread and the individual help

Bruce
I've always read that -P90 in .jackdrc or qjacktl gui is above the maximim allowed of 89,
and that 89 is only available when etc/security/limits.conf has it's own maximum priority setting of 99.

I mention this in case jackd sees P90 as out of range, and quietly
uses some lower default. Probably one of the devs can clarify this.
Cheers

Re: Guitarix on a Raspberry Pi 2

Posted: Wed Mar 29, 2017 1:32 pm
by tramp
glowrak guy wrote:'ve always read that -P90 in .jackdrc or qjacktl gui is above the maximim allowed of 89,
and that 89 is only available when etc/security/limits.conf has it's own maximum priority setting of 99.

I mention this in case jackd sees P90 as out of range, and quietly
uses some lower default. Probably one of the devs can clarify this.
Cheers
That's wrong.
If you've set max prio to 99 in etc/security/limits.conf, jack could use at max 95.
It will never silently use any default value, but when the prio is set to high, realtime scheduling will be disabled. Just check the logs.

But true is, that a value around 86 is good enough in most cases and leave headroom for hardware prio settings (soundcard, etc.)

Re: Guitarix on a Raspberry Pi 2

Posted: Fri Mar 31, 2017 7:26 am
by Frank Carvalho
Hi Tramp

Going back to the recompile issue of the GxVmk2 plugin. I still have issues with the plugin. When I have started Guitarix on the RPi with the Vmk2 plugin, then at the moment I select a GxVmk2 setting it crashes Guitarix, which disappears silenty without a trace. After a couple of reboots, restarts and crashes of the setup it will eventually start running as it should. Approximately one out of four restarts of the system it will run, and the other three it crashes.
I have been wondering about this behaviour. Obvisously, I will have to produce a stack trace in order for you to be able to locate the problem, but I was wondering if the number 4 itself has something to do with the number of cores on the board, as in, it will work if the setup is launched on one specific core. I think I may have added a few commands to manipulate the irq distribution of the cores to bind the usb sound card to a specific core, and not have the core interferred by other irqs.

/Frank

Re: Guitarix on a Raspberry Pi 2

Posted: Fri Mar 31, 2017 8:15 am
by tramp
Hi Frank

Mpf, well, it's a bug.
I found a missing (or to late) initialisation of a variable which leads to a race condition in initing.
My bad. I've pushed a fix to git now, please do a update and recompile again. I hope, this is the last bug to discover. :)

regards
hermann

Re: Guitarix on a Raspberry Pi 2

Posted: Sat Apr 08, 2017 9:15 am
by Frank Carvalho
Finally got the time to check it out. And yes, that solved the problem. Thank you!

/Frank

Re: Guitarix on a Raspberry Pi 2

Posted: Sat Apr 08, 2017 4:43 pm
by Frank Carvalho
HI again Tramp

I may have found another bug. As I ported my presets from the RPi to my main computer, I noticed that all the on/off switches of the newly recompiled GxVmk2 has inverted their meaning on my AMD64 recompile. Meaning, on is off and vice versa. I noticed this because it sounded all wrong, and there was reverb on all sounds, even when the reverb switch said off. Flipping the switch to on removed reverb. This seems to affect the MRB, Reverb and Vibe switches. Perhaps the MRB select too, but I don't think so.
The ARM recompile works on the RPi

Frank.

Re: Guitarix on a Raspberry Pi 2

Posted: Sun Apr 09, 2017 6:02 am
by tramp
Have you rebuild the version on your main PC as well?
I've tried it just, and cant reproduce the issue, here, when the control shows "off", the effect is off.

Re: Guitarix on a Raspberry Pi 2

Posted: Sun Apr 09, 2017 8:46 am
by Frank Carvalho
Yes, I uninstalled, rebuilt and reinstalled on my main PC before testing it out. The RPi version works perfectly.
I recompiled once more on the PC and retested again just now, and the problem persists. ON means OFF and the other way around.
I also compare the settings to the settings of patch to the values they take on the RPi, and they match. ON on RPi translates to ON on the PC - just the meaning is reversed. I noticed this because on the PC there suddenly was reverb on all my patches, and they sound all wrong. I wanted to test them before I made them public.

Could you install my patch: http://www.etcetera-music.eu/public/ins ... sic/Vox.gx and check it out. It requires gain control, GxSuppaTonebender, GxVmk2, and run it through a 2x12" cab. The patches were made for use of guitarix in front of a real amp. Most of the patches, except "Paperback Rythm" and "Flying" are meant to NOT have vibrato and none of the patches use the reverb. Could you test if it behaves like that on your setup?

/Frank

Re: Guitarix on a Raspberry Pi 2

Posted: Sun Apr 09, 2017 8:56 am
by tramp
Please go to the plugin loader and select GxVmk2, then press details. Is there any value entry in red?
However, press "restore defaults" and save, try if that solves it.
Image

If that didn't help, remove GxVmk2 and press save, restart guitarix, and load it again.
After that you could sort the controls to your need again.