Hi,
with latest @dave96 suggestions I can compile the plugin, and now I’m getting some other errors (also seem related to triggerAndWaitForCallback
but I no longer see the unable to complete
message. This is the console output (below stacktrace):
JUCE v5.4.5
JUCE Assertion failure in juce_ChangeBroadcaster.cpp:39
JUCE Assertion failure in juce_ChangeBroadcaster.cpp:39
Creating Default Controllers...
JUCE Assertion failure in tracktion_AutomationRecordManager.cpp:26
JUCE Assertion failure in juce_ChangeBroadcaster.cpp:39
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
Edit loaded in: 56 ms
*** ERROR: Rogue call to triggerAndWaitForCallback()
JUCE Assertion failure in tracktion_AsyncFunctionUtils.h:164
JUCE Assertion failure in tracktion_DeviceManager.cpp:286Rebuilding Wave Device List...
Wave In: Input 1: 0 (L)
Wave In: Input 2: 1 (L)
Wave Out: Output 1 + 2: 0 (L), 1 (R)
Default Wave Out: Output 1 + 2
Default MIDI Out:
Default Wave In: Input 1
Default MIDI In:
Finding MIDI I/O
MIDI output: MIDI Output
MIDI input: MIDI Input
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
Audio block size: 512 Rate: 44100
JUCE Assertion failure in tracktion_DeviceManager.cpp:547
Rebuilding Wave Device List...
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
Wave In: Input 1: 0 (L)
Wave In: Input 2: 1 (L)
Wave Out: Output 1 + 2: 0 (L), 1 (R)
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default Wave Out:
Default MIDI Out:
Default Wave In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default MIDI In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_DeviceManager.cpp:547
Rebuilding Wave Device List...
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
Wave In: Input 1: 0 (L)
Wave In: Input 2: 1 (L)
Wave Out: Output 1 + 2 (enabled): 0 (L), 1 (R)
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default Wave Out: Output 1 + 2
Default MIDI Out:
Default Wave In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default MIDI In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_DeviceManager.cpp:547
Rebuilding Wave Device List...
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
Wave In: Input 1: 0 (L)
Wave In: Input 2: 1 (L)
Wave Out: Output 1 + 2 (enabled): 0 (L), 1 (R)
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default Wave Out: Output 1 + 2
Default MIDI Out:
Default Wave In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default MIDI In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_DeviceManager.cpp:547
Rebuilding Wave Device List...
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
Wave In: Input 1: 0 (L)
Wave In: Input 2: 1 (L)
Wave Out: Output 1 + 2 (enabled): 0 (L), 1 (R)
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default Wave Out: Output 1 + 2
Default MIDI Out:
Default Wave In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default MIDI In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_DeviceManager.cpp:547
Rebuilding Wave Device List...
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
Wave In: Input 1 (enabled): 0 (L)
Wave In: Input 2: 1 (L)
Wave Out: Output 1 + 2 (enabled): 0 (L), 1 (R)
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default Wave Out: Output 1 + 2
Default MIDI Out:
Default Wave In: Input 1
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default MIDI In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_DeviceManager.cpp:547
Rebuilding Wave Device List...
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
JUCE Assertion failure in tracktion_LevelMeasurer.cpp:52
Wave In: Input 1 (enabled): 0 (L)
Wave In: Input 2 (enabled): 1 (L)
Wave Out: Output 1 + 2 (enabled): 0 (L), 1 (R)
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default Wave Out: Output 1 + 2
Default MIDI Out:
Default Wave In: Input 1
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
Default MIDI In:
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_EditPlaybackContext.cpp:77
JUCE Assertion failure in tracktion_DeviceManager.cpp:1211
JUCE Assertion failure in tracktion_Modifier.cpp:113
JUCE Assertion failure in tracktion_Modifier.cpp:113
JUCE Assertion failure in tracktion_DeviceManager.cpp:968
JUCE Assertion failure in tracktion_MidiInputDevice.cpp:630
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_MacroParameter.cpp:203
Generating waves: 1622ms
JUCE Assertion failure in tracktion_DeviceManager.cpp:154
JUCE Assertion failure in juce_AsyncUpdater.cpp:82
JUCE Assertion failure in tracktion_EditPlaybackContext.cpp:61
JUCE Assertion failure in tracktion_EditPlaybackContext.cpp:77
Failed to load Event list from Json config file
*** Leaked objects detected: 3 instance(s) of class OwnedArray
[... lots of other leaked objects detected]
JUCE Assertion failure in juce_LeakedObjectDetector.h:90
JUCE Assertion failure in juce_Singleton.h:50
JUCE Assertion failure in juce_Singleton.h:50
JUCE Assertion failure in juce_Singleton.h:50
JUCE Assertion failure in juce_Singleton.h:50
JUCE Assertion failure in juce_Singleton.h:50
JUCE Assertion failure in juce_Singleton.h:50
*** Leaked objects detected: 1 instance(s) of class StringPairArray
JUCE Assertion failure in juce_LeakedObjectDetector.h:90
*** Leaked objects detected: 36 instance(s) of class StringArray
JUCE Assertion failure in juce_LeakedObjectDetector.h:90
JUCE Assertion failure in juce_Singleton.h:50
And this the stacktrace (without setting any breakpoint):
root@ffont-VirtualBox:/home/ffont# gdb /media/sf_Shared/Sushi-x86_64-0.8.0.AppImage
GNU gdb (Ubuntu 8.1-0ubuntu3.2) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /media/sf_Shared/Sushi-x86_64-0.8.0.AppImage...(no debugging symbols found)...done.
(gdb) run -d -c /media/sf_Shared/builds_linux/sushi_EngineInPluginDemo2_vst2.json
Starting program: /media/sf_Shared/Sushi-x86_64-0.8.0.AppImage -d -c /media/sf_Shared/builds_linux/sushi_EngineInPluginDemo2_vst2.json
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
process 9022 is executing new program: /tmp/.mount_Sushi-njzRLN/AppRun
process 9022 is executing new program: /tmp/.mount_Sushi-njzRLN/usr/bin/sushi
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
SUSHI - Sensus Universal Sound Host Interface
Copyright 2016-2018 MIND Music Labs, Stockholm
[New Thread 0x7ffff48c7700 (LWP 9039)]
[New Thread 0x7fffeffff700 (LWP 9040)]
[New Thread 0x7fffef7fe700 (LWP 9041)]
JUCE v5.4.5
[New Thread 0x7fffd344c700 (LWP 9046)]
[New Thread 0x7fffd2c4b700 (LWP 9047)]
[New Thread 0x7fffd244a700 (LWP 9048)]
[New Thread 0x7fffd1c49700 (LWP 9049)]
JUCE Assertion failure in juce_ChangeBroadcaster.cpp:39
Thread 1 "sushi" received signal SIGTRAP, Trace/breakpoint trap.
0x00007ffff5acb187 in kill () at ../sysdeps/unix/syscall-template.S:78
78 ../sysdeps/unix/syscall-template.S: No such file or directory.
(gdb) bt
#0 0x00007ffff5acb187 in kill () at ../sysdeps/unix/syscall-template.S:78
#1 0x00007fffedc41ef1 in juce::ChangeBroadcaster::addChangeListener(juce::ChangeListener*) (this=0x555555a26008, listener=0x555555a25ff0)
at ../../../../../modules/juce/modules/juce_events/broadcasters/juce_ChangeBroadcaster.cpp:39
#2 0x00007fffee277876 in tracktion_engine::DeviceManager::DeviceManager(tracktion_engine::Engine&) (this=0x555555a25fb0, e=...)
at ../../../../../modules/tracktion_engine/playback/tracktion_DeviceManager.cpp:182
#3 0x00007fffee4174bf in tracktion_engine::Engine::initialise() (this=0x5555559fedb0)
at ../../../../../modules/tracktion_engine/utilities/tracktion_Engine.cpp:58
#4 0x00007fffee416f78 in tracktion_engine::Engine::Engine(std::unique_ptr<tracktion_engine::PropertyStorage, std::default_delete<tracktion_engine::PropertyStorage> >, std::unique_ptr<tracktion_engine::UIBehaviour, std::default_delete<tracktion_engine::UIBehaviour> >, std::unique_ptr<tracktion_engine::EngineBehaviour, std::default_delete<tracktion_engine::EngineBehaviour> >) (this=0x5555559fedb0, ps=std::unique_ptr<tracktion_engine::PropertyStorage> = {...}, ub=std::unique_ptr<tracktion_engine::UIBehaviour> = {...}, eb=std::unique_ptr<tracktion_engine::EngineBehaviour> = {...}) at ../../../../../modules/tracktion_engine/utilities/tracktion_Engine.cpp:33
#5 0x00007fffee41719b in tracktion_engine::Engine::Engine(juce::String, std::unique_ptr<tracktion_engine::UIBehaviour, std::default_delete<tracktion_engine::UIBehaviour> >, std::unique_ptr<tracktion_engine::EngineBehaviour, std::default_delete<tracktion_engine::EngineBehaviour> >) (this=0x5555559fedb0, applicationName=..., ub=std::unique_ptr<tracktion_engine::UIBehaviour> = {...}, eb=std::unique_ptr<tracktion_engine::EngineBehaviour> = {...}) at ../../../../../modules/tracktion_engine/utilities/tracktion_Engine.cpp:37
#6 0x00007fffedf1c96c in EngineInPluginDemo::TracktionEngineMembers::TracktionEngineMembers() (this=0x5555559fedb0)
at ../../Source/../../../EngineInPluginDemo.h:175
#7 0x00007fffedf1cb0d in std::make_unique<EngineInPluginDemo::TracktionEngineMembers>() () at /usr/include/c++/7/bits/unique_ptr.h:825
#8 0x00007fffedf1b170 in EngineInPluginDemo::prepareToPlay(double, int) (this=0x5555559fd0c0, sampleRate=48000, expectedBlockSize=64)
at ../../Source/../../../EngineInPluginDemo.h:67
#9 0x00007fffedabecc4 in JuceVSTWrapper::resume() (this=0x5555559fdb60)
at ../../../../../modules/juce/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp:632
#10 0x00007fffedac2001 in JuceVSTWrapper::handleResumeSuspend(JuceVSTWrapper::VstOpCodeArguments) (this=0x5555559fdb60, args=...)
at ../../../../../modules/juce/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp:1815
#11 0x00007fffedac09d9 in JuceVSTWrapper::dispatcher(int, JuceVSTWrapper::VstOpCodeArguments) (this=0x5555559fdb60, opCode=12, args=...)
at ../../../../../modules/juce/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp:1217
#12 0x00007fffedac0e4e in JuceVSTWrapper::dispatcherCB(Vst2::AEffect*, int, int, long long, void*, float) (vstInterface=0x5555559fdbc8, opCode=12, index=0, value=1, ptr=0x0, opt=0) at ../../../../../modules/juce/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp:1265
#13 0x00005555555e79c2 in sushi::vst2::Vst2xWrapper::set_enabled(bool) ()
#14 0x00005555555af4f9 in sushi::engine::AudioEngine::add_plugin_to_track(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, sushi::engine::PluginType) ()
#15 0x00005555555c4d98 in sushi::jsonconfig::JsonConfigurator::_make_track(rapidjson::GenericValue<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator> > const&) ()
#16 0x00005555555c6ba4 in sushi::jsonconfig::JsonConfigurator::load_tracks() ()
#17 0x000055555557cb30 in main ()
I’m doing this inside a VM, so maybe some errors might be due to that, specially if it has trouble accessing audio devices. But in any case some errors still seem to be related to message queues, etc.