atsushieno / aap-core

an Audio Plugin Format/Framework for Android
MIT License
92 stars 3 forks source link

Determine the policy on how we indicate that the MIDI ports are used by plugin too, not just AAPXS etc. #187

Closed atsushieno closed 1 year ago

atsushieno commented 1 year ago

Since 0.7.8 AAP makes use of AAPXS SysEx8 as extension controllers, and that means we made MIDI ports mandatory to exist. However, we still populate ports via port elements in aap_metadata.xml if exists, and if they do not name MIDI2 input and/or output ports, AAPXS SysEx8 messaging is lost and it even causes unwanted blocking.

Creating MIDI ports is definitely the only solution, but what makes it problematic is how we determine if the plugin "accepts MIDI inputs" and "produces MIDI outputs" (in JUCE terminology). We need to make them identifying whether they are also used by the plugin code, not just AAPXS.

Current idea for the decision process: