Guitarix as a plugin?

All your LV2 and LADSPA goodness and more.

Moderators: MattKingUSA, khz

tramp
Established Member
Posts: 2328
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 450 times

Re: Guitarix as a plugin?

Post by tramp »

hdr wrote:that doesn't work:
So then it seems I haven't released it.
hdr wrote:Do you have any idea how to fix it?
I guess building guitarix from git will solve both issues.
On the road again.
tramp
Established Member
Posts: 2328
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 450 times

Re: Guitarix as a plugin?

Post by tramp »

A other way to overcome your graphical issue may be to use

Code: Select all

guitarix -N
as the carla the command line, this will involve the guitarix no-gui option. Then you could start the GUI from a terminal with

Code: Select all

guitarix -G
You could control the guitarix engine running in ardour then with this GUI running outside of ardour.
GUI and engine communicate over a rpc port, no further action by you is required to make it work.
On the road again.
hdr
Established Member
Posts: 138
Joined: Sun Feb 03, 2019 1:47 pm
Has thanked: 1 time

Re: Guitarix as a plugin?

Post by hdr »

tramp wrote:I guess building guitarix from git will solve both issues.
Yes, it did solve both problems: viewtopic.php?f=48&t=20895
Thanks a lot.
OS: Debian 10 DAW: Ardour 6.2
BenjaminN13
Posts: 1
Joined: Sat Apr 11, 2020 9:34 am

Re: Guitarix as a plugin?

Post by BenjaminN13 »

Is there still no other way to handle multiple tracks with their own persistent presets than creating a bunch of guitarix lv2 plugins each with their own -n option? Because if you have to do this for each session you create it can become a mess real quick.
paul
Established Member
Posts: 226
Joined: Wed May 07, 2014 9:50 pm
Location: UK
Has thanked: 1 time
Been thanked: 1 time

Re: Guitarix as a plugin?

Post by paul »

If I try to add Guitarix as a Jack application into Carla, it says
Failed to load plugin. Timeout while waiting for a response from plugin-bridge (or the plugin crashed on initialization?)
Does anyone know what might be going on?

The log says

Code: Select all

guitarix: symbol lookup error: guitarix: undefined symbol: jack_session_reply
Guitarix version: 0.42.1 (installed from source)
Carla-git version: 2.3.0

Carla works well with other applications and plugins.
Guitarix works well outside of Carla.
Keep on rocking in the free world!
tramp
Established Member
Posts: 2328
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 450 times

Re: Guitarix as a plugin?

Post by tramp »

Jack session is depreciated in the meantime, so it seems falkTX have disabled it in his own jacklib in carla, but it is still in jack itself so guitarix is build with support for it.
I've no added a configure option in guitarix so that you could disable jack session support in guitarix during build. (--no-jack-session)
when you checkout from git and build with this option that should solve your issue.
On the road again.
paul
Established Member
Posts: 226
Joined: Wed May 07, 2014 9:50 pm
Location: UK
Has thanked: 1 time
Been thanked: 1 time

Re: Guitarix as a plugin?

Post by paul »

tramp wrote: Sun Jun 13, 2021 5:14 am Jack session is depreciated in the meantime, so it seems falkTX have disabled it in his own jacklib in carla, but it is still in jack itself so guitarix is build with support for it.
I've no added a configure option in guitarix so that you could disable jack session support in guitarix during build. (--no-jack-session)
when you checkout from git and build with this option that should solve your issue.
Thank you for the swift workaround. Unfortunately, though, it doesn't seem to work, the problem persists.

If that can help, during build, the following output is shown:

Code: Select all

...
[ 464/1047] Compiling src/gx_head/engine/ladspaplugin.cpp
../src/gx_head/engine/gx_jack.cpp: In member function ‘int gx_jack::GxJack::return_last_session_event()’:
../src/gx_head/engine/gx_jack.cpp:1071:34: warning: ‘int jack_session_reply(jack_client_t*, jack_session_event_t*)’ is deprecated [-Wdeprecated-declarations]
 1071 |  jack_session_reply(client, event);
      |                                  ^
In file included from ../src/headers/gx_jack.h:35,
                 from ../src/headers/engine.h:99,
                 from ../src/gx_head/engine/gx_jack.cpp:30:
/usr/include/jack/session.h:204:5: note: declared here
  204 | int jack_session_reply (jack_client_t        *client,
      |     ^~~~~~~~~~~~~~~~~~
../src/gx_head/engine/gx_jack.cpp:1071:34: warning: ‘int jack_session_reply(jack_client_t*, jack_session_event_t*)’ is deprecated [-Wdeprecated-declarations]
 1071 |  jack_session_reply(client, event);
      |                                  ^
In file included from ../src/headers/gx_jack.h:35,
                 from ../src/headers/engine.h:99,
                 from ../src/gx_head/engine/gx_jack.cpp:30:
/usr/include/jack/session.h:204:5: note: declared here
  204 | int jack_session_reply (jack_client_t        *client,
      |     ^~~~~~~~~~~~~~~~~~
../src/gx_head/engine/gx_jack.cpp:1072:31: warning: ‘void jack_session_event_free(jack_session_event_t*)’ is deprecated [-Wdeprecated-declarations]
 1072 |  jack_session_event_free(event);
      |                               ^
In file included from ../src/headers/gx_jack.h:35,
                 from ../src/headers/engine.h:99,
                 from ../src/gx_head/engine/gx_jack.cpp:30:
/usr/include/jack/session.h:217:6: note: declared here
  217 | void jack_session_event_free (jack_session_event_t *event) JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT;
      |      ^~~~~~~~~~~~~~~~~~~~~~~
../src/gx_head/engine/gx_jack.cpp:1072:31: warning: ‘void jack_session_event_free(jack_session_event_t*)’ is deprecated [-Wdeprecated-declarations]
 1072 |  jack_session_event_free(event);
      |                               ^
In file included from ../src/headers/gx_jack.h:35,
                 from ../src/headers/engine.h:99,
                 from ../src/gx_head/engine/gx_jack.cpp:30:
/usr/include/jack/session.h:217:6: note: declared here
  217 | void jack_session_event_free (jack_session_event_t *event) JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT;
      |      ^~~~~~~~~~~~~~~~~~~~~~~
../src/gx_head/engine/gx_jack.cpp: In member function ‘int gx_jack::GxJack::return_last_session_event_ins()’:
../src/gx_head/engine/gx_jack.cpp:1082:41: warning: ‘int jack_session_reply(jack_client_t*, jack_session_event_t*)’ is deprecated [-Wdeprecated-declarations]
 1082 |  jack_session_reply(client_insert, event);
      |                                         ^
In file included from ../src/headers/gx_jack.h:35,
                 from ../src/headers/engine.h:99,
                 from ../src/gx_head/engine/gx_jack.cpp:30:
/usr/include/jack/session.h:204:5: note: declared here
  204 | int jack_session_reply (jack_client_t        *client,
      |     ^~~~~~~~~~~~~~~~~~
../src/gx_head/engine/gx_jack.cpp:1082:41: warning: ‘int jack_session_reply(jack_client_t*, jack_session_event_t*)’ is deprecated [-Wdeprecated-declarations]
 1082 |  jack_session_reply(client_insert, event);
      |                                         ^
In file included from ../src/headers/gx_jack.h:35,
                 from ../src/headers/engine.h:99,
                 from ../src/gx_head/engine/gx_jack.cpp:30:
/usr/include/jack/session.h:204:5: note: declared here
  204 | int jack_session_reply (jack_client_t        *client,
      |     ^~~~~~~~~~~~~~~~~~
../src/gx_head/engine/gx_jack.cpp:1083:31: warning: ‘void jack_session_event_free(jack_session_event_t*)’ is deprecated [-Wdeprecated-declarations]
 1083 |  jack_session_event_free(event);
      |                               ^
In file included from ../src/headers/gx_jack.h:35,
                 from ../src/headers/engine.h:99,
                 from ../src/gx_head/engine/gx_jack.cpp:30:
/usr/include/jack/session.h:217:6: note: declared here
  217 | void jack_session_event_free (jack_session_event_t *event) JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT;
      |      ^~~~~~~~~~~~~~~~~~~~~~~
../src/gx_head/engine/gx_jack.cpp:1083:31: warning: ‘void jack_session_event_free(jack_session_event_t*)’ is deprecated [-Wdeprecated-declarations]
 1083 |  jack_session_event_free(event);
      |                               ^
In file included from ../src/headers/gx_jack.h:35,
                 from ../src/headers/engine.h:99,
                 from ../src/gx_head/engine/gx_jack.cpp:30:
/usr/include/jack/session.h:217:6: note: declared here
  217 | void jack_session_event_free (jack_session_event_t *event) JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT;
      |      ^~~~~~~~~~~~~~~~~~~~~~~

[ 465/1047] Compiling src/gx_head/engine/gx_engine.cpp
...
Keep on rocking in the free world!
tramp
Established Member
Posts: 2328
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 450 times

Re: Guitarix as a plugin?

Post by tramp »

That means you build with jack session support.
Please uninstall the build (sudo ./waf uninstall) and then run

Code: Select all

./waf distclean
then

Code: Select all

./waf configure --prefix=/usr  --includeresampler --includeconvolver --optimization --no-jack-session
then

Code: Select all

./waf build
then

Code: Select all

sudo ./waf install
that should give you a build without jack session support which should work in carla.
On the road again.
oddy.o.lynx
Established Member
Posts: 115
Joined: Sat Jun 30, 2018 2:54 am
Has thanked: 22 times
Been thanked: 22 times

Re: Guitarix as a plugin?

Post by oddy.o.lynx »

GuitarX is LV2. Waveform does not support LV2.
paul
Established Member
Posts: 226
Joined: Wed May 07, 2014 9:50 pm
Location: UK
Has thanked: 1 time
Been thanked: 1 time

Re: Guitarix as a plugin?

Post by paul »

tramp wrote: Sun Jun 13, 2021 2:12 pm That means you build with jack session support.
...
that should give you a build without jack session support which should work in carla.
Thank you. Now it does load into Carla, but it still does not work properly. It does process sound, but first of all, as soon as I load it, the following line gets repeated continuously in the Carla log, flooding it:

Code: Select all

Carla assertion failure: "jbasebuf->isValid" in file libjack_midi.cpp, line 30
But mostly, as soon as I click on the usual icon in Carla to load the Guitarix UI (for example, to change preset), Carla deactivates it, it looks like a sort of "internal crash". The log says:

Code: Select all

(guitarix:5782): Gdk-ERROR **: 16:42:47.690: The program 'guitarix' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
  (Details: serial 510 error_code 3 request_code 8 (core protocol) minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the GDK_SYNCHRONIZE environment
   variable to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)
waitForClient(process) timed out
Keep on rocking in the free world!
tramp
Established Member
Posts: 2328
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 450 times

Re: Guitarix as a plugin?

Post by tramp »

Carla have two different modes to load the GUI, there is the so called "bridged GUI" and the direct one. If, the error happen during using the bridged mode you may report it on the carla issue tracker.
Sorry, but I've currently no time to update carla and check by my self, but surely guitarix itself didn't produce a BadWindow error. It must be the culprit of carla. (Hence this feature is still experimental in carla)
On the road again.
Post Reply