Parameter groups result in VST3 validator failures

Thanks @t0m - one minor observation, re: your comment:

        // From the VST3 docs:
        // Up to 2^31 parameters can be exported with id range [0, 2147483648]
        // (the range [2147483649, 429496729] is reserved for host application). 

I’d note that the VST3 docs refer to a reserved range for parameter IDs, not unit IDs - but it’s clear the same restriction applies to unit IDs too.

I’m guessing this restriction might also have been the cause of this code in generateVSTParamIDForParam - from that code:

       #if JUCE_USE_STUDIO_ONE_COMPATIBLE_PARAMETERS
        // studio one doesn't like negative parameters
        paramHash &= ~(((Vst::ParamID) 1) << (sizeof (Vst::ParamID) * 8 - 1));
       #endif

When this code was introduced it seems it wasn’t clear/documented that some of the ID range was reserved: Automation not working in Studio One 3

1 Like