I'm reading seq.html, and trying to understand how MIDI events are passed around, but it doesn't make sense to me. Under "Subscription", it says "subscription is a connection between two sequencer ports." The snd_seq_subscribe_port() function takes a snd_seq_port_subscribe_t which specifies a sender and a receiver. But the explanation always seems to refer to subscribing "to" a port, rather than subscribing "between" two ports. Indeed, under "Subscription", it says "this program must subscribe itself to the MIDI port", and then says events from that port are "automatically sent to this program". And then it says "There is another subscription type for opposite direction". But if subscription is a connection between a source and a destination, what are the two types of subscription? It implies that when port X is connected to port Y, only one of them is being "subscribed to", and that the other is somehow doing the "subscribing". Later, under "Permissions", it speaks of READ and WRITE permissions being needed to send events to or receive events from other ports. Then, it speaks of SUBS_READ and SUBS_WRITE permissions, which are needed for subscription, implying that subscription isn't the same thing as merely passing events from one port to another. It then says that these SUBS flags aren't necessary "if the client subscribes itself to the specified port". Since a client is just an object, not a program or a piece of code, how does a client subscribe itself to something, or do anything at all? And in a couple more places, it talks of a "third client" subscribing to ports, if BOTH ports have the SUBS permission flags. So we've had mention of a program subscribing to a port, and a client subscribing itself to a port, and a third client subscribing to two ports. What do these mean? And why are SUBS permission bits needed in some cases but not others? In short, what IS "subscription"? -- Ciao, Paul D. DeRocco Paul mailto:pderocco@xxxxxxxxxxxxx ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user