I want to implement a program that sends and receives individual MIDI events to/from ports on my computer. I want to do individual events (i.e., not loading a MIDI file and sequencing it). I'm very confused by the interfaces Transmitter and Receiver. Let me put it this way. Some MIDI devices are input devices (would this correspond to a Receiver?) and some are output devices (a Transmitter?). What is confusing is that the Java documentation implies that Transmitters and Receivers pair up in the same process. That's not how MIDI devices work. I would receive from a MIDI input device and do something with that, but I would not transmit back to the same device, nor would I need to transmit to get it elsewhere in the same process. It's only if I'm sending the MIDI message to a different process or hardware device that I would transmit it. So clearly the meaning of Transmitter and Receiver doesn't correspond to the physical reality as I understand it. It must do something else.
I can't find any MIDI tutorials that explain this. Any help appreciated.
So a google for "java midi tutorial" gave you nothing huh?
Note that I've not once in my life learned about a key concept from only one source. Its always a matter of combining the knowledge of many different sources, including existing forum posts, drive it all through the old brain and work the information into a solution. I would not hold my breath looking for this tutorial of yours.