
On Mon, 28 Aug 2023 11:53:09 +1200, Peter Reutemann quoted:
'... MIDI 2.0 support in ALSA ...'
Yay to that. MIDI 1.0 came out in 1984. While there were various addenda (e.g. the General MIDI standard instrument bank, the Standard MIDI file format), the base spec itself remained unchanged for nearly four decades until MIDI 2.0, which was published in 2021. An intro to the new spec is here <https://www.moforte.com/midi-2-0/>. Basically: * The protocol now allows two-way communication, not just one-way. This allows devices to negotiate “profiles”, to indicate the kinds of capabilities they have (e.g. mixers, timbre controls, effects). * Larger parameter fields, taking advantage of higher-bandwidth communication channels. So for example instead of the old limit of 16 separate channels for individual note/controller messages, you now have 16 groups of 16 channels each. * A new “Property Exchange” option is an alternative to SysEx, using JSON format for its messages. * Backward compatibility with MIDI 1.0 remains as a fallback. Of course, the new protocol is no longer confined to the old, slow 31.25kbps serial connections. I imagine the Linux kernel support adds the USB transport option <https://www.midi.org/specifications-old/item/usb-midi-2-0-specification>. Looking for network-based transport, I came across this <https://en.wikipedia.org/wiki/RTP-MIDI>, which Apple initially created as an enhancement of MIDI 1.0, but it appears work is being done to include MIDI 2.0.