AUv3Wrapper parameterGroups not being filled?


Looking at AUv3Wrapper in SDK 3.7.2 b28 I’m having some difficulty at…

String str = (i - 1);

My plugin crashes because i=1 and parameterGroups contains zero elements.

Notexpsynth_auv3_macos doesn’t appear to hit this line. AGain_auv3_macos does, but I’m having trouble figuring out what is needed in buildParameterGroup:(ParameterInfo)pi to populate the parameterGroups vector.

Can anyone point me in the right direction?

Many thanks,

Check your unit info. It looks like you don’t have the root unit defined. Have you run the validator on your VST3 plug-in? Does it pass?

Found it. The vst3 plug-in does pass validation. But your suggestion turned up a block of code in my controller initialize() method, leftover from the hostchecker sample:

    // create a unit Latency parameter
    UnitInfo unitInfo; = 0001;
    unitInfo.parentUnitId = kRootUnitId; // attached to the root unit
    Steinberg::UString (, USTRINGSIZE ( (USTRING ("Setup"));
    unitInfo.programListId = kNoProgramListId;

    Unit* unit = new Unit (unitInfo);
    addUnit (unit);

Removing this fixes the problem. Not sure why I started with hostchecker code but it seemed appropriate at the time.


Did you remove all the code you posted above? I’d like to understand the issue correctly to make sure that no one else will trap in it after you :wink:

Yes, if I comment out this block of code, my AUv3 works. Uncomment and my AUv3 crashes at the same place.