Clarification about kCanAutomate

SDK for VST 3 audio plug-in and host development.
Post Reply
abique
Posts: 39
Joined: Tue Jun 21, 2016 12:43 pm

Clarification about kCanAutomate

Post by abique » Tue Mar 26, 2019 12:02 pm

Hi,

I'm confused about kCanAutomate, and I would like to clarify some points:

- kCanAutomate can't be used for an attribute which changes other attributes, but it is unclear for program change?
- Is it allowed to pass automation data to a parameter which do not have the flag kCanAutomate to the IAudioProcessor?
- Should the DAW expose to the user parameters which do not have the flag kCanAutomate?
- Should the DAW let the user create automation for parameters which do not have the flag kCanAutomate?
- Can the DAW record automation if the parameter do not have the flag kCanAutomate?
- If the DAW exposes a parameter without kCanAutomate to the user, should the the parameter changes be sent exclusively to the IEditController and not the IAudioProcessor?

Thank you for the clarifications, any additional information would be welcome.

Regards,
Alexandre

Arne Scheffler
Posts: 291
Joined: Mon Jun 20, 2016 7:53 am

Re: Clarification about kCanAutomate

Post by Arne Scheffler » Tue Mar 26, 2019 12:42 pm

Hi Alexandre,
it really just means that the parameter is able to be automated by the DAW without side-effects.
kCanAutomate can't be used for an attribute which changes other attributes, but it is unclear for program change?
Don't use for program change.
Is it allowed to pass automation data to a parameter which do not have the flag kCanAutomate to the IAudioProcessor?
No, you should not even record automation for it.
Should the DAW expose to the user parameters which do not have the flag kCanAutomate?
Yes
Should the DAW let the user create automation for parameters which do not have the flag kCanAutomate?
No
Can the DAW record automation if the parameter do not have the flag kCanAutomate?
No
If the DAW exposes a parameter without kCanAutomate to the user, should the the parameter changes be sent exclusively to the IEditController and not the IAudioProcessor?
The parameter changes by the user should be treated equally for all parameters. So don't do any differentiations.

Does it makes sense ?
Cheers,
Arne

abique
Posts: 39
Joined: Tue Jun 21, 2016 12:43 pm

Re: Clarification about kCanAutomate

Post by abique » Tue Mar 26, 2019 2:04 pm

Arne Scheffler wrote:No, you should not even record automation for it.
The only way to update a parameter to the IAudioProcessor is to create an automation point right?

Arne Scheffler
Posts: 291
Joined: Mon Jun 20, 2016 7:53 am

Re: Clarification about kCanAutomate

Post by Arne Scheffler » Tue Mar 26, 2019 5:09 pm

There's no automation point definition in the API. The API just knows "parameter changes". The kCanAutomate is a hint to the host that this parameter can be automated. If this is not present, the parameter changes should not be recorded or played back in the host. User changes to a parameter are not a recorded automation.

I hope this makes it clearer,
Arne

abique
Posts: 39
Joined: Tue Jun 21, 2016 12:43 pm

Re: Clarification about kCanAutomate

Post by abique » Tue Mar 26, 2019 5:16 pm

I meant that we sent the parameter update to the IAudioProcessor using IParameterChanges as we do for processing automation.

I think it is clear now. Thank you :-)

Post Reply