Assign all parameters of a plugin to the CCs of a midi channel

Hello, I would like a button that assigns all parameters of the currently selected plugin to the first n CCs of a midi channel. Right now, I would click each parameter and MIDI learn a corresponding knob, but that is very tedious.

Is there something built-in that would allow that? How are you handling that?

If it needs programming, would I be able to achieve that with the Lua bindings?

1 Like

If not that could be a great request, but this was my first thought, look into whether it could be done in lua or not.

 Seablade

There is no concept of “the currently selected plugin” that is accessible for MIDI bindings.

Plugin selection is possible in multiple tracks at once, and the data arriving for MIDI control does not target specific tracks.

You cannot write control surfaces in Lua at this time - this sort of thing would require programming in C++, modifying the generic MIDI control module.

Okay, so I don’t understand your answer fully, but save to say if I wanted something like it, I would need to write some C++. I know a bit of C++, and have built Ardour from source before, so I would be inclined to look into it.

Where would be a good place to ask questions (your answer raises several for me) and discuss this idea: here, IRC, mailing list, bug tracker?

IRC.

It would be an extensive and relatively deep change, because as noted, the semantic concept you need doesn’t exist (“the currently selected plugin”).

It would be inside libs/surfaces/generic_midi and would probably add a new identifier that could be used in a MIDI binding map. For example, you already bind a given CC to “the fader of the currently selected track”. The core problem here is that “the currently selected plugin” is not defined.