phaesler
(phaesler)
August 31, 2022, 11:35am
#1
Hi, I’ve suddenly started having a weird (and annoying) issue in Ardour (6.9, self-compiled). I presume it’s related to my recent upgrade to Debian testing (bookworm).
It affects any session containing an LV2 plugin. To reproduce:
Open the session.
Double click on an LV2 plugin to open the native interface.
Close the native interface window.
Double click on an LV2 plugin (the same or a different one).
After these steps, the Ardour GUI freezes. If the transport is playing it will continue to play through to the end of the session, but the GUI doesn’t update and is unresponsive. Have to use kill command to close Ardour.
Notes:
LV2 plugins only. VSTs are fine.
I can open and close multiple plugin windows repeatedly as long as I always keep at least one open. As soon as I close all plugin windows (after having at least one open), the next one I try to open causes the freeze.
Editing with the generic interface works fine.
When I run ardour from the command line I see the following error messages when the GUI-freeze occurs:
(ardour-6.9.0:205880): GLib-GObject-WARNING **: 21:29:47.772: cannot register existing type 'SuilX11Wrapper'
(ardour-6.9.0:205880): GLib-CRITICAL **: 21:29:47.772: g_once_init_leave: assertion 'result != 0' failed
Any ideas? It’s totally reproducible, so I can compile a debug version or whatever if it would help.
x42
(Robin Gareus)
August 31, 2022, 12:07pm
#2
This came up a few weeks ago with Arch Linux already. It is a problem with libsuil. Search this forum, so far the easiest is to downgrade the library (or use the official binary, which does not have this issue)
phaesler
(phaesler)
September 1, 2022, 12:09am
#3
Thanks Robin. I can find a few libsuil related posts but nothing quite like this, but I’ll try downgrading it.
Has the issue been reported upstream to the libsuil maintainers?
phaesler
(phaesler)
September 1, 2022, 6:01am
#4
This (disturbingly old) github issue appears to refer to the same problem:
opened 03:08PM - 24 Nov 21 UTC
Hi,
I'm having some issue with the following case:
- host: [ossia score](htt… ps://ossia.io) (Qt5)
- plug-in: calf (GTK2)
On Ubuntu 20.04, by default, Qt uses the qgtk3 platform theme which calls gtk_init.
But when I try to show a calf UI:
```
(ossia-score:12415): GLib-GObject-WARNING **: 16:04:32.067: cannot register existing type 'GdkDisplayManager'
(ossia-score:12415): GLib-CRITICAL **: 16:04:32.067: g_once_init_leave: assertion 'result != 0' failed
(ossia-score:12415): GLib-GObject-CRITICAL **: 16:04:32.067: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed
(ossia-score:12415): GLib-GObject-WARNING **: 16:04:32.067: invalid (NULL) pointer instance
(ossia-score:12415): GLib-GObject-CRITICAL **: 16:04:32.067: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
(ossia-score:12415): GLib-GObject-WARNING **: 16:04:32.067: invalid (NULL) pointer instance
(ossia-score:12415): GLib-GObject-CRITICAL **: 16:04:32.067: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
(ossia-score:12415): GLib-GObject-WARNING **: 16:04:32.070: cannot register existing type 'GdkDisplay'
(ossia-score:12415): GLib-CRITICAL **: 16:04:32.070: g_once_init_leave: assertion 'result != 0' failed
(ossia-score:12415): GLib-GObject-CRITICAL **: 16:04:32.070: g_type_register_static: assertion 'parent_type > 0' failed
(ossia-score:12415): GLib-CRITICAL **: 16:04:32.070: g_once_init_leave: assertion 'result != 0' failed
(ossia-score:12415): GLib-GObject-CRITICAL **: 16:04:32.070: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed
Erreur de segmentation (core dumped)
```
with the following stack trace:
```
(gdb) bt
#0 0x00007fff54962aa5 in gdk_display_open () at /lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#1 0x00007fff5493116a in gdk_display_open_default_libgtk_only () at /lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#2 0x00007fff54b05f4d in gtk_init () at /lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#3 0x00007fff6e9087ee in suil_wrapper_new () at /usr/lib/x86_64-linux-gnu/suil-0/libsuil_gtk2_in_qt5.so
#4 0x00007ffff16a405c in suil_instance_new () at /lib/x86_64-linux-gnu/libsuil-0.so.0
```
what is the correct thing to do in that case ?
drobilla
(D)
September 1, 2022, 1:37pm
#5
That issue is specific to Qt5 hosts when the user is using a Qt theme that uses a Gtk engine internally. It does not apply to Ardour.
This issue was Ardour freezes after opening an LV2 plugin's GUI the second time (#7) · Issues · LV2 / suil · GitLab . It has been fixed and will be in a new release soon, but it can also be fixed by building suil with link flag '-Wl,-z,nodelete'
.
1 Like
phaesler
(phaesler)
September 1, 2022, 11:16pm
#6
Thank you very much @drobilla - that’s very helpful!
1 Like
phaesler
(phaesler)
September 2, 2022, 12:57pm
#7
Just confirming that the link flags suggested by @drobilla above fix the problem.
All working fine now.
1 Like
system
(system)
closed
September 30, 2022, 12:58pm
#8
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.