View Single Post
Old 09-30-2010, 05:53 AM   #8
schwa's Avatar
Join Date: Mar 2007
Location: NY
Posts: 9,725

Does your plugin have parameters (knobs) that when the user moves them, other parameters (knobs) also move? It sounds like AU validation tests for this and if it happens, requires than those parameters be marked in a special way, so the host knows that moving one knob can affect other knobs.

That's all just guesswork, I can't find any documentation for it. If this is the right explanation, a simple fix might be just be to add
| kAudioUnitParameterFlag_IsElementMeta
to the kAudioUnitProperty_ParameterInfo handler in IPlugAU.cpp (line 422 in my copy). That would mark all parameters as "special", which isn't quite right, but should at least get it to pass validation.

A more thorough fix would be to add IParam::SetMeta(bool) and bool IParam::IsMeta(), so the plugin can mark specific parameters as meta-parameters (meaning knobs that move other knobs), and in the same place in IPlugAU.cpp, do
if (pParam->IsMeta()) pInfo->flags |= kAudioUnitParameterFlag_IsElementMeta;
schwa is offline   Reply With Quote