Any chance that you could make the output channels arbitrary? Just yesterday I built a sampler array with Kontakt, in REAPER, that used 28 outputs from a single plugin instance.
You can declare as many output ports as you want. For the sidechain it makes sense to have the repeatable attribute because it let the host decide how many inputs it wants to connect. But for the plugin output, I think that only the plugin can tell the host how many output it wants.
Right now the scenario would be:
- plugin send CLAP_EVENT_NEW_PORTS_CONFIGS to the host
- the host deactivate the plugin
- the host scans the available configurations, the plugin can expose only the new one
- then the host can select the new configuration and activate the plugin
What would that feel like in a DAW? You open the plugin, change its default configuration, get rid of it, and then add it back independently and let it tell the DAW how many outputs it has, so you can connect them to tracks (or whatever the analogue is)?
You don't need to remove the plugin and add it again. Just change the config in the plugin, and then when you get back to the daw, you should already see the new outputs.
Right now the scenario would be: - plugin send CLAP_EVENT_NEW_PORTS_CONFIGS to the host - the host deactivate the plugin - the host scans the available configurations, the plugin can expose only the new one - then the host can select the new configuration and activate the plugin
What do you think of that?