So, I was thinking about this and I wonder if there’s room for some GUI improvement in future versions of Ardour.
When Ardour (and many other DAWs) first supported MIDI, the primary target was for external MIDI devices, and the GUI seems to have been developed with that in mind: create a MIDI track, then, on the track itself, select what the external MIDI device is. Then, when you insert a patch change, it gives you a device-specific patch selector.

And, for percussion tracks, it names the notes. All courtesy of MIDNAM files.
These days, I would estimate that the majority of the MIDI track use is via Virtual Instrument plugins, and the MIDI stuff in the track header doesn’t get used at all. And, for Virtual Instruments, the workflow is entirely different: create a track, select the Virtual Instrument in the track creation dialog, and it gets inserted as a plugin on the track:

I’m wondering if those two situations can be unified in some way or, at least, merged a bit.
What In was thinking is, instead of having the External MIDI Device selector in the track header, could this be implemented as a pseudo-plugin.
So, in that case, when a new MIDI track is added, instead of just the Virtual Device selector, there’s the option to select “Virtual Instrument” or “External Instrument”, and the appropriate device selector shown.
Then, when an external instrument is selected, a pseudo plugin is inserted into the processor box, representing the external device.

When opened, the dialogue for this pseudo-plugin would have the configuration that would currently be in the MIDI track header. This pseudo-plugin would, obviously, have some limitations in that you could only have one on a track at any time (effectively, it’s either there or it’s not).
It may even be possible (not sure how) to have the ability to implement a device specific controller at some point (I’m not sure if there are plugin standards which could be leveraged for that)
Of course, I may have missed a glaringly obvious reason this wouldn’t work, but it’s an idea I had that’s been niggling in my brain for the last few days, and which seems to make sense.
I think it would unify the workflow, and make it much clearer what is actually happening.
Thoughts?
Cheers,
Keith