-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Open
Description
Detailed steps on how to reproduce the bug
- Install Spectrasonics Keyscape 1.5.2c (or Trilian)
- Available at: /Library/Audio/Plug-Ins/VST3/Keyscape.vst3 (macOS)
- Build JUCE AudioPluginHost or any JUCE-based VST3 scanner
- Using JUCE 8.0.10
- macOS arm64 (but likely affects all platforms)
- Attempt to scan the Keyscape plugin
- Either through AudioPluginHost's plugin menu or programmatically via VST3PluginFormat::createPluginInstance()
- Observe crash with SIGSEGV
- Crash occurs at this line during parameter initialization:
auto count = controller.getParameterCount();
What is the expected behaviour?
Plugin should load successfully (with or without parameters), similar to how Logic Pro, Ableton Live, and other DAWs handle it. Debug dump from successful Omnisphere scanning:
Debug mode - plugin data: {
"Name": "Omnisphere",
"Vendor": "Spectrasonics",
"Version": "3.0.0",
"Category": "Instrument|Synth",
"Type": "Instrument",
"Format": "VST3",
"Identifier": "/Library/Audio/Plug-Ins/VST3/Omnisphere.vst3",
"Parameters": [
{
"Name": "Param 0",
"Index": 0,
"UniqueId": "0",
"Steps": 2147483647,
"Discrete": false,
"MetaParamter": false,
"Automatable": true,
"Orientation": "Normal",
"Unit": "",
"DefaultValue": 0.0,
"ValueStrings": [],
"Bypass": false,
"Category": 0,
"Boolean": false
},
{
"Name": "Param 1",
"Index": 1,
"UniqueId": "1",
"Steps": 2147483647,
"Discrete": false,
"MetaParamter": false,
"Automatable": true,
"Orientation": "Normal",
"Unit": "",
"DefaultValue": 0.0,
"ValueStrings": [],
"Bypass": false,
"Category": 0,
"Boolean": false
},
{
"Name": "Param 2",
"Index": 2,
"UniqueId": "2",
"Steps": 2147483647,
"Discrete": false,
"MetaParamter": false,
"Automatable": true,
"Orientation": "Normal",
"Unit": "",
"DefaultValue": 0.0,
"ValueStrings": [],
"Bypass": false,
"Category": 0,
"Boolean": false
},
{
"Name": "Param 3",
"Index": 3,
"UniqueId": "3",
"Steps": 2147483647,
"Discrete": false,
"MetaParamter": false,
"Automatable": true,
"Orientation": "Normal",
"Unit": "",
"DefaultValue": 0.0,
"ValueStrings": [],
"Bypass": false,
"Category": 0,
"Boolean": false
},
{
"Name": "Param 4",
"Index": 4,
"UniqueId": "4",
"Steps": 2147483647,
"Discrete": false,
"MetaParamter": false,
"Automatable": true,
"Orientation": "Normal",
"Unit": "",
"DefaultValue": 0.0,
"ValueStrings": [],
"Bypass": false,
"Category": 0,
"Boolean": false
},
{
"Name": "Param 5",
"Index": 5,
"UniqueId": "5",
"Steps": 2147483647,
"Discrete": false,
"MetaParamter": false,
"Automatable": true,
"Orientation": "Normal",
"Unit": "",
"DefaultValue": 0.0,
"ValueStrings": [],
"Bypass": false,
"Category": 0,
"Boolean": false
},
{
"Name": "Param 6",
"Index": 6,
"UniqueId": "6",
"Steps": 2147483647,
"Discrete": false,
"MetaParamter": false,
"Automatable": true,
"Orientation": "Normal",
"Unit": "",
"DefaultValue": 0.0,
"ValueStrings": [],
"Bypass": false,
"Category": 0,
"Boolean": false
},
...
Operating systems
macOS
What versions of the operating systems?
15.7.2 (24G325)
Architectures
Arm64/aarch64
Stacktrace
* thread #1, name = 'JUCE v8.0.10: Message Thread', queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x180)
frame #0: 0x000000010c209eb4 Keyscape`___lldb_unnamed_symbol5130 + 12
* frame #1: 0x0000000102a17c48 PluginScanner`juce::getAllParamIDs(controller=0x0000000109ee5770) at juce_VST3PluginFormat.cpp:105:29
frame #2: 0x0000000102a17538 PluginScanner`juce::VST3PluginInstance::initialiseParameterList(this=0x000000010b02d000) at juce_VST3PluginFormat.cpp:3568:27
frame #3: 0x0000000102a16950 PluginScanner`juce::VST3PluginInstance::initialise()::'lambda'()::operator()(this=0x000000016d6898d8) const at juce_VST3PluginFormat.cpp:2675:13
frame #4: 0x00000001029f1d18 PluginScanner`juce::VST3PluginInstance::initialise(this=0x000000010b02d000) at juce_VST3PluginFormat.cpp:2680:9
frame #5: 0x000000010296bfb8 PluginScanner`juce::createVST3Instance(format=0x0000600003fab380, description=0x0000600001bb0180, file=0x000000016d689a10) at juce_VST3PluginFormat.cpp:4203:21
frame #6: 0x000000010296bc0c PluginScanner`juce::VST3PluginFormat::createPluginInstance(this=0x0000600003fab380, description=0x0000600001bb0180, (null)=44100, (null)=512, callback=juce::AudioPluginFormat::PluginCreationCallback @ 0x000000016d689bc8) at juce_VST3PluginFormat.cpp:4228:27
frame #7: 0x0000000102922b4c PluginScanner`juce::AudioPluginFormat::createInstanceFromDescription(this=0x0000600003fab380, desc=0x0000600001bb0180, initialSampleRate=44100, initialBufferSize=512, errorMessage=0x000000016d68a318) at juce_AudioPluginFormat.cpp:74:9
frame #8: 0x000000010277a910 PluginScanner`PluginScannerApplication::parseDescription(this=0x000000012f031e00, desc=0x0000600001bb0180) at Main.cpp:473:44
frame #9: 0x0000000102778fb8 PluginScanner`PluginScannerApplication::loadPlugin(this=0x000000012f031e00, pluginPathOrIdentifier=String @ 0x000000016d68a748, client=0x000000016d68a8d8) at Main.cpp:341:39
frame #10: 0x0000000102776274 PluginScanner`PluginScannerApplication::initialise(this=0x000000012f031e00, commandLine=0x000000016d68a9b0) at Main.cpp:188:4
frame #11: 0x0000000102be6f34 PluginScanner`juce::JUCEApplicationBase::initialiseApp(this=0x000000012f031e00) at juce_ApplicationBase.cpp:312:5
frame #12: 0x0000000102ffb9a8 PluginScanner`juce::JUCEApplication::initialiseApp(this=0x000000012f031e00) at juce_Application.cpp:97:30
frame #13: 0x0000000102be6cb8 PluginScanner`juce::JUCEApplicationBase::main() at juce_ApplicationBase.cpp:271:16
frame #14: 0x0000000102be6b3c PluginScanner`juce::JUCEApplicationBase::main(argc=5, argv=0x000000016d68b128) at juce_ApplicationBase.cpp:255:16
frame #15: 0x00000001027757a0 PluginScanner`main(argc=5, argv=0x000000016d68b128) at Main.cpp:820:1
frame #16: 0x00000001834f2b98 dyld`start + 6076Plug-in formats (if applicable)
VST3
Plug-in host applications (DAWs) (if applicable)
No response
Testing on the develop branch
The bug is present on the develop branch
Code of Conduct
- I agree to follow the Code of Conduct
Misc.
Looks related: spotify/pedalboard#346
Metadata
Metadata
Assignees
Labels
No labels