@V_ad_im,
@vitalker, это уже есть, step по умолчанию, а плавное изменение параметра, например фазы или сустейн нужно переключать flags.
vstint32 это переопределенный тип int.
/** Parameter Properties used in #effGetParameterProperties. */
struct VstParameterProperties
{
float stepFloat; ///< float step
float smallStepFloat; ///< small float step
float largeStepFloat; ///< large float step
char label[kVstMaxLabelLen];///< parameter label
VstInt32 flags; ///<
@see VstParameterFlags
VstInt32 minInteger; ///< integer minimum
VstInt32 maxInteger; ///< integer maximum
VstInt32 stepInteger; ///< integer step
VstInt32 largeStepInteger; ///< large integer step
char shortLabel[kVstMaxShortLabelLen]; ///< short label, recommended: 6 + delimiter
В vst3 появилось больше вариантов представления для автоматизации, и убраны ограничения на 8 символов в названии параметра и его значений если они передаются в виде строки. Но это ограничение больше для хостов чем для плагинов.
@basЫl, я руками и ногами за стандартизацию, но вы невидели исходники десятка плагинов разных разработчиков в которых один "стандарт" был реализован как кому захотелось. С vst3 то же самое, я уже сейчас встречаю плагины которые без мата незапускаются или взаимодействуют с хостом не так как у штейнбергов описано.
Я планирую на днях одному разработчику свиснуть, может сюда сможет заглянуть и растолковать нам все плюсы с минусами в vst3. Я достаточно знаком с vst2 и свое пишу и буду писать по старинке, это уже только когда не станет вариантов что будет поддержка vst2 на уровне хоста, тогда уже прийдется вникать глубже, а сейчас листание исходников vst 3.6.1 вызывает кучу вопросов и непоняток - нахрена монстрячить то что каждый все равно перепилит по своему.