Tracktion / pluginval

Cross platform plugin testing and validation tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

JUCE_ASSERT_MESSAGE_THREAD thrown in Debug

DesertKnight opened this issue · comments

While trying to run PluginVal in Debug (Both on windows and Mac) I constantly getting JUCE_ASSERT_MESSAGE_THREAD thrown, even before getting to plugin code.
I need to fully disable it in order to continue debug session.

Is it correct behavior or someting wrong with my setup?

Can you post a stack trace when the assertion is hit please? It sounds like either the message thread hasn't been set up or it's running on a background d thread for some reason...

Can I also check you're using the tip of the develop branch?

I will prepare the stuck trace.
Not sure what you mean by "using the tip of the develop branch"?

ValidatorChildProcess (8)#0 0x0000000101b50f21 in juce::VST3PluginInstance::prepareToPlay(double, int) at /Volumes/p4client/ProAudio/SDKs/Juce/6.1.6/modules/juce_audio_processors/format_types/juce_VST3PluginFormat.cpp:2386
#1 0x0000000101609175 in AudioProcessingTest::runAudioProcessingTest(PluginTests&, juce::AudioPluginInstance&, bool) at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/tests/BasicTests.cpp:196
#2 0x0000000101608a06 in AudioProcessingTest::runTest(PluginTests&, juce::AudioPluginInstance&) at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/tests/BasicTests.cpp:245
#3 0x00000001015d7a1e in PluginTests::testType(juce::PluginDescription const&) at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/PluginTests.cpp:192
#4 0x00000001015d5a81 in PluginTests::runTest() at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/PluginTests.cpp:107
#5 0x0000000101f6038d in juce::UnitTest::performTest(juce::UnitTestRunner*) at /Volumes/p4client/ProAudio/SDKs/Juce/6.1.6/modules/juce_core/unit_tests/juce_UnitTest.cpp:77
#6 0x0000000101f6275c in juce::UnitTestRunner::runTests(juce::Array<juce::UnitTest*, juce::DummyCriticalSection, 0> const&, long long) at /Volumes/p4client/ProAudio/SDKs/Juce/6.1.6/modules/juce_core/unit_tests/juce_UnitTest.cpp:165
#7 0x00000001016754be in runTests(PluginTests&, std::__1::function<void (juce::String const&)>) at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/Validator.cpp:205
#8 0x0000000101670ea6 in validate(juce::String const&, PluginTests::Options, std::__1::function<void (juce::String const&)>) at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/Validator.cpp:224
#9 0x000000010166de3e in ValidatorChildProcess::processRequest(juce::MemoryBlock) at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/Validator.cpp:500
#10 0x000000010166ba07 in ValidatorChildProcess::processRequests() at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/Validator.cpp:463
#11 0x0000000101667884 in ValidatorChildProcess::run() at /Volumes/p4client/ProAudio/SDKs/PluginVal/0.3.0/Source/Validator.cpp:426
#12 0x0000000101f4a91f in juce::Thread::threadEntryPoint() at /Volumes/p4client/ProAudio/SDKs/Juce/6.1.6/modules/juce_core/threads/juce_Thread.cpp:96
#13 0x0000000101f4b398 in juce::juce_threadEntryPoint(void*) at /Volumes/p4client/ProAudio/SDKs/Juce/6.1.6/modules/juce_core/threads/juce_Thread.cpp:118
#14 0x0000000101fd1759 in juce::threadEntryProc(void*) at /Volumes/p4client/ProAudio/SDKs/Juce/6.1.6/modules/juce_core/native/juce_posix_SharedCode.h:859
#15 0x000000010548bc0d in _pthread_start ()
#16 0x0000000105493ccf in thread_start ()

I think you're using an old version of pluginval. Where did you get it from and can you update to the latest please? v1.0.1

Yes, I am using version 0.3.0 which is not very old.
I did not find any remarks in changelog about fixing this issue.
Can you please direct me to the explanation of how to compile the new version with cmake?
Right now I have errors on juce, so I guess I should configure path to it somwhere but I did not find where.

Thanks!

Hi @DanygW, 0.3.0 is about a year old so it's well worth updating.

This is the line in the change log that relates to these assertions:
Added better conformance to the VST3 standard when running at levels 5 and below

The repo has documents for how to build with the new cmake system: https://github.com/Tracktion/pluginval#installation

Cheers

Thanks @drowaudio.
I updated to the new version. It's just in older version there was a projucer version and now all is in CMake, so it took me some time to figure out how to run it. Indeed, asserts are gone.

Great. We moved to cmake as it was easier to support and provide setup instructions for.
Glad that you're up and running now.