Plug-ins, Hosts, Apps,
Hardware, Soundware
Developers
(Brands)
Videos Groups
Whats's in?
Banks & Patches
Download & Upload
Music Search
KVR
   
KVR Forum » DISTRHO
Thread Read
HydridReverb crash in Ardour3 SVN
benbriedis
KVRer
- profile
- pm
- e-mail
PostPosted: Tue Aug 07, 2012 4:38 am reply with quote
Hi - I'm not sure if this is an Ardour thing, or a HybridReverb2 thing, or maybe an LV2 thing, but at the moment Ardour crashes when I try to add the plugin to a track. I get the lines:

DEBUG::LV2: init
JUCE v2.0.21
JUCE Assertion failure in ../source/modules/juce_core/files/juce_File.cpp, line 147

in the output. There seems to be some issue with file paths.

Some vital stats -

Distro: Arch
Kernel: 3.2.12-rt22 #1 SMP PREEMPT RT (a custom kernel)
Jack: jackdmp version 1.9.9 tmpdir /dev/shm protocol 8
Ardour: Ardour3.0beta5 (built using [b'13110'] and GCC version 4.7.0 20120505
(prerelease))
distro: built today with debugging on

Cheers,
Ben

Edit: thought I'd tack on some of the stack trace...
I can post a full stack trace if you think it would be useful.

Thread 1 (Thread 0xb3550840 (LWP 2320)):
#0 0xb7fdd424 in __kernel_vsyscall ()
#1 0xb4ef5596 in kill () from /lib/libc.so.6
#2 0xa59bc6d9 in juce::File::parseAbsolutePath (p=...) at ../source/modules/juce_core/files/juce_File.cpp:147
#3 0xa59bc150 in juce::File::File (this=0xec19808, fullPathName=...) at ../source/modules/juce_core/files/juce_File.cpp:27
#4 0xa598c346 in SystemConfig::getPresetFilename (this=0xec195a0) at ../source/SystemConfig.cpp:135
#5 0xa5989518 in MasterAndCommander::MasterAndCommander (this=0xec193b0, ap=0xec19220) at ../source/MasterAndCommander.cpp:82
#6 0xa598470e in HybridReverb2Processor::HybridReverb2Processor (this=0xec19220) at ../source/HybridReverb2Processor.cpp:56
#7 0xa59845ba in createPluginFilter () at ../source/HybridReverb2Processor.cpp:36
#8 0xa59b2dc2 in JuceLV2Wrapper::JuceLV2Wrapper (this=0xec190e8, sampleRate_=96000, features=0xebe6e50)
at ../../../libs/juce-lv2/juce_LV2_Wrapper.cpp:1266
#9 0xa59b0204 in juceLV2_Instantiate (sampleRate=96000, features=0xebe6e50)
at ../../../libs/juce-lv2/juce_LV2_Wrapper.cpp:1991
#10 0xb549e71f in lilv_plugin_instantiate () from /usr/lib/liblilv-0.so.0
#11 0xb7ce032a in ARDOUR::LV2Plugin::init (this=0xebee000, c_plugin=0x94d0170, rate=96000) at ../libs/ardour/lv2_plugin.cc:264
#12 0xb7cdfc79 in ARDOUR::LV2Plugin::LV2Plugin (this=0xebee000, engine=..., session=..., c_plugin=0x94d0170, rate=96000)
at ../libs/ardour/lv2_plugin.cc:179
#13 0xb7ce7614 in ARDOUR::LV2PluginInfo::load (this=0xa1afb50, session=...) at ../libs/ardour/lv2_plugin.cc:1625
#14 0x08dcfbe6 in PluginSelector::load_plugin (this=0xa86c7a8, pi=...) at ../gtk2_ardour/plugin_selector.cc:399
#15 0x08dd1dd0 in PluginSelector::plugin_chosen_from_menu (this=0xa86c7a8, pi=...) at ../gtk2_ardour/plugin_selector.cc:746
#16 0x08dd67cf in sigc::bound_mem_functor1<void, PluginSelector, boost::shared_ptr<ARDOUR::PluginInfo> const&>::operator() (
this=0xa8726f0, _A_a1=...) at /usr/include/sigc++-2.0/sigc++/functors/mem_fun.h:1851
#17 0x08dd64fd in sigc::adaptor_functor<sigc::bound_mem_functor1<void, PluginSelector, boost::shared_ptr<ARDOUR::PluginInfo> const&> >::operator()<boost::shared_ptr<ARDOUR::PluginInfo>&> (this=0xa8726ec, _A_arg1=...)
at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:84
#18 0x08dd604a in sigc::bind_functor<-1, sigc::bound_mem_functor1<void, PluginSelector, boost::shared_ptr<ARDOUR::PluginInfo> const&>, boost::shared_ptr<ARDOUR::PluginInfo>, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::operator() (
this=0xa8726e8) at /usr/include/sigc++-2.0/sigc++/adaptors/bind.h:1110
#19 0x08dd58ed in sigc::internal::slot_call0<sigc::bind_functor<-1, sigc::bound_mem_functor1<void, PluginSelector, boost::shared_ptr<ARDOUR::PluginInfo> const&>, boost::shared_ptr<ARDOUR::PluginInfo>, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>, void>::call_it (rep=0xa8726d0) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103
#20 0xb6b7c593 in Glib::SignalProxyNormal::slot0_void_callback(_GObject*, void*) () from /usr/lib/libglibmm-2.4.so.1
#21 0xb6af436f in g_cclosure_marshal_VOID__VOID () from /usr/lib/libgobject-2.0.so.0
#22 0xb6af2606 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#23 0xb6b04446 in ?? () from /usr/lib/libgobject-2.0.so.0
#24 0xb6b0c2d6 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#25 0xb6b0c453 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#26 0xb67ea6c5 in gtk_widget_activate () from /usr/lib/libgtk-x11-2.0.so.0
#27 0xb66c83c7 in gtk_menu_shell_activate_item () from /usr/lib/libgtk-x11-2.0.so.0
#28 0xb66c87d1 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#29 0xb66bcb2d in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#30 0xb5e75ab5 in Gtk::Widget_Class::button_release_event_callback(_GtkWidget*  , _GdkEventButton*) ()
from /usr/lib/libgtkmm-2.4.so.1
#31 0xb66b3762 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#32 0xb6af149d in ?? () from /usr/lib/libgobject-2.0.so.0
#33 0xb6af2606 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#34 0xb6b03dc0 in ?? () from /usr/lib/libgobject-2.0.so.0
#35 0xb6b0c011 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#36 0xb6b0c453 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#37 0xb67eb743 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#38 0xb66b192e in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0
#39 0xb66b1cc0 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
#40 0xb6526078 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#41 0xb6a2c753 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#42 0xb6a2caf0 in ?? () from /usr/lib/libglib-2.0.so.0
#43 0xb6a2cf4b in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#44 0xb66b0a5f in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#45 0xb5dee114 in Gtk::Main::run_impl() () from /usr/lib/libgtkmm-2.4.so.1
#46 0xb5deeb4f in Gtk::Main::run() () from /usr/lib/libgtkmm-2.4.so.1
#47 0xb6feec36 in Gtkmm2ext::UI::run (this=0x95b4f10, old_receiver=...) at ../libs/gtkmm2ext/gtk_ui.cc:268
#48 0x08cd735b in main (argc=1, argv=0xbffff234) at ../gtk2_ardour/main.cc:455
^ Joined: 07 Aug 2012  Member: #285649  Location: Sydney, Australia
falkTX
KVRist
- profile
- pm
- e-mail
PostPosted: Wed Aug 08, 2012 6:09 pm reply with quote
perhaps you missed the HybridReverb2 data files?
the README on its folder has instructions.

note that an assertion is not a crash, in a release build that would continue to work but perhaps crash later.

juce_File.cpp here:
http://juce.git.sourceforge.net/git/gitweb.cgi?p=juce/juce;a =blob;f=modules/juce_core/files/juce_File.cpp;h=33da2531aa72 5db0ed4df8d4692b201687b5b755;hb=eb028b7c33b453934061e8aa8ffe de8f28f321a0

looks really something related to files...

btw, does the same happen with the VST version too? (ardour3 has native vst support)
^ Joined: 19 Sep 2007  Member: #160530  Location: Viseu, Portugal
benbriedis
KVRer
- profile
- pm
- e-mail
PostPosted: Fri Aug 10, 2012 7:15 pm reply with quote
I haven't yet tested VST, as I get a compilation error when compiling them. I'll give it a go if I resolve the issue. Curiously the LV2 plugin does work in Ardour2.

I can nurse the LV2 plugin through the assertion by putting a './' in front of 'HybridReverb2_presets.xml' in the preferences.xml file. Using the full path also seems to work. The Juce function that complains doesn't seem to like relative file names unless they start with './'.

Unfortunately now I get a segmentation fault. The thread in question says:

#0 0x6e75663a in ?? ()
#1 0xa498bdc4 in juce::Component::internalChildrenChanged (this=0xebf1db0) at ../source/modules/juce_gui_basics/components/juce_Component. cpp:1573
#2 0xa498b78f in juce::Component::addChildComponent (this=0xebf1db0, child=0xebf1e50, zOrder=0) at ../source/modules/juce_gui_basics/components/juce_Component. cpp:1414
#3 0xa498b7e1 in juce::Component::addAndMakeVisible (this=0xebf1db0, child=0xebf1e50, zOrder=-1) at ../source/modules/juce_gui_basics/components/juce_Component. cpp:1423
#4 0xa47d95b2 in EditorComponent::EditorComponent (this=0xebf1db0, ownerFilter=0xebdde90) at ../source/gui/EditorComponent.cpp:45
#5 0xa47c9d1d in HybridReverb2Processor::createEditor (this=0xebdde90) at ../source/HybridReverb2Processor.cpp:236
#6 0xa489b8c4 in juce::AudioProcessor::createEditorIfNeeded (this=0xebdde90) at ../source/modules/juce_audio_processors/processors/juce_Audi oProcessor.cpp:225
#7 0xa47c97b1 in HybridReverb2Processor::HybridReverb2Processor (this=0xebdde90) at ../source/HybridReverb2Processor.cpp:65
#8 0xa47c95ba in createPluginFilter () at ../source/HybridReverb2Processor.cpp:36
#9 0xa47f7dc2 in JuceLV2Wrapper::JuceLV2Wrapper (this=0xebddd58, sampleRate_=96000, features=0xeb6a940) at ../../../libs/juce-lv2/juce_LV2_Wrapper.cpp:1266
#10 0xa47f5204 in juceLV2_Instantiate (sampleRate=96000, features=0xeb6a940) at ../../../libs/juce-lv2/juce_LV2_Wrapper.cpp:1991
#11 0xb549e71f in lilv_plugin_instantiate () from /usr/lib/liblilv-0.so.0
#12 0xb7ce032a in ARDOUR::LV2Plugin::init (this=0xebb2358, c_plugin=0x94d0170, rate=96000) at ../libs/ardour/lv2_plugin.cc:264
#13 0xb7cdfc79 in ARDOUR::LV2Plugin::LV2Plugin (this=0xebb2358, engine=..., session=..., c_plugin=0x94d0170, rate=96000) at ../libs/ardour/lv2_plugin.cc:179
#14 0xb7ce7614 in ARDOUR::LV2PluginInfo::load (this=0xa1a2668, session=...) at ../libs/ardour/lv2_plugin.cc:1625
#15 0x08dcfbe6 in PluginSelector::load_plugin (this=0xa85f408, pi=...) at ../gtk2_ardour/plugin_selector.cc:399
#16 0x08dd1dd0 in PluginSelector::plugin_chosen_from_menu (this=0xa85f408, pi=...) at ../gtk2_ardour/plugin_selector.cc:746
#17 0x08dd67cf in sigc::bound_mem_functor1<void, PluginSelector, boost::shared_ptr<ARDOUR::PluginInfo> const&>::operator() (this=0xa85bfc0, _A_a1=...)
at /usr/include/sigc++-2.0/sigc++/functors/mem_fun.h:1851
#18 0x08dd64fd in sigc::adaptor_functor<sigc::bound_mem_functor1<void, PluginSelector, boost::shared_ptr<ARDOUR::PluginInfo> const&> >::operator()<boost::shared_ptr<ARDOUR::PluginInfo>&> (this=0xa85bfbc,
_A_arg1=...) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:84
#19 0x08dd604a in sigc::bind_functor<-1, sigc::bound_mem_functor1<void, PluginSelector, boost::shared_ptr<ARDOUR::PluginInfo> const&>, boost::shared_ptr<ARDOUR::PluginInfo>, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::operator() (this=0xa85bfb8) at /usr/include/sigc++-2.0/sigc++/adaptors/bind.h:1110
#20 0x08dd58ed in sigc::internal::slot_call0<sigc::bind_functor<-1, sigc::bound_mem_functor1<void, PluginSelector, boost::shared_ptr<ARDOUR::PluginInfo> const&>, boost::shared_ptr<ARDOUR::PluginInfo>, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>, void>::call_it (rep=0xa85bfa0) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103
#21 0xb6b7c593 in Glib::SignalProxyNormal::slot0_void_callback(_GObject*, void*) () from /usr/lib/libglibmm-2.4.so.1
#22 0xb6af436f in g_cclosure_marshal_VOID__VOID () from /usr/lib/libgobject-2.0.so.0
#23 0xb6af2606 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#24 0xb6b04446 in ?? () from /usr/lib/libgobject-2.0.so.0
#25 0xb6b0c2d6 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#26 0xb6b0c453 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#27 0xb67ea6c5 in gtk_widget_activate () from /usr/lib/libgtk-x11-2.0.so.0
#28 0xb66c83c7 in gtk_menu_shell_activate_item () from /usr/lib/libgtk-x11-2.0.so.0
#29 0xb66c87d1 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#30 0xb66bcb2d in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#31 0xb5e75ab5 in Gtk::Widget_Class::button_release_event_callback(_GtkWidget*  , _GdkEventButton*) () from /usr/lib/libgtkmm-2.4.so.1
#32 0xb66b3762 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#33 0xb6af149d in ?? () from /usr/lib/libgobject-2.0.so.0
#34 0xb6af2606 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#35 0xb6b03dc0 in ?? () from /usr/lib/libgobject-2.0.so.0
#36 0xb6b0c011 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#37 0xb6b0c453 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#38 0xb67eb743 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#39 0xb66b192e in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0
#40 0xb66b1cc0 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
#41 0xb6526078 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#42 0xb6a2c753 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#43 0xb6a2caf0 in ?? () from /usr/lib/libglib-2.0.so.0
#44 0xb6a2cf4b in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#45 0xb66b0a5f in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#46 0xb5dee114 in Gtk::Main::run_impl() () from /usr/lib/libgtkmm-2.4.so.1
#47 0xb5deeb4f in Gtk::Main::run() () from /usr/lib/libgtkmm-2.4.so.1
#48 0xb6feec36 in Gtkmm2ext::UI::run (this=0x95b4f10, old_receiver=...) at ../libs/gtkmm2ext/gtk_ui.cc:268
#49 0x08cd735b in main (argc=1, argv=0xbffff234) at ../gtk2_ardour/main.cc:455

It's less obvious what to do here. Looks like a child object is invalid or something.
^ Joined: 07 Aug 2012  Member: #285649  Location: Sydney, Australia
falkTX
KVRist
- profile
- pm
- e-mail
PostPosted: Fri Aug 10, 2012 7:21 pm reply with quote
I've got a similar issue recently, does this happen when closing the UI?

Please try installing the latest suil version from SVN
(ie, http://drobilla.net/software/suil/)
and re-link ardour3 to it.
^ Joined: 19 Sep 2007  Member: #160530  Location: Viseu, Portugal
benbriedis
KVRer
- profile
- pm
- e-mail
PostPosted: Fri Aug 10, 2012 10:46 pm reply with quote
The problem is occurring when adding the plugin. I remember seeing some problem before when closing the GUI, but I'm not getting that far at the moment.

I just updated suil to suil 0.6.4-1 from Arch, which seems to be the latest release. It hasn't changed matters unfortunately.

I have got the Linux VST version working though. Saving the parameters still seems awkward, but it may be possible if I create a new preset each time. My first impression is that I may also be able to display the GUI while it is active, which would be very useful thing to do - so I might try to work with the Linux VST version for a while and see if I can use it on a proper project.

Thanks for all your help!
^ Joined: 07 Aug 2012  Member: #285649  Location: Sydney, Australia
All times are GMT - 8 Hours

Printable version
Page 1 of 1
Display posts from previous:   
ReplyNew TopicPrevious TopicNext Topic
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Username: Password:  
KVR Developer Challenge 2012