On 9/9/2011 7:17 AM, frankster wrote: > On 09/09/11 15:03, Joe Emenaker wrote: >> On 9/9/2011 1:56 AM, William Zwicky wrote: >>> I think my example above matches that last case. Once the message >>> for widget A has started sending, other messages can be queued, but >>> they can't be sent until widget A says 'handshake complete'! >> My initial reaction to this is that this isn't an issue with the rate of >> data sent by the MIDI layer, so the MIDI layer shouldn't be involved. >> I'm thinking that the synthdriver should be able to manage all of this >> itself. The only reason we'd need to trouble the MIDI layer with this is >> if your synthdriver either needed special transfer-rate limits *or* if >> your synthdriver needed to block all traffic for *other* synths on that >> interface while the communication were happening. Otherwise, this should >> be able to be managed by the synthdriver. > I think it does concern the midi layer because transmitting data to one > synth could overload a different synth on the same port. Although we can > expect a synth driver to know how much traffic its device can handle, we > can't expect a synth driver to care or know about other synths. Well, that's a different case (but it's one that we've still discussed, and I think there does need to be a way for a synthdriver to tell the MIDI layer "I can't handle more than X bytes per second... no matter *what* synth it's for, so don't let any data onto the wires faster than that"). What *Bill* seems to be referring to is that there seems to be a synth which requires an orchestrated series of messages for updating synth settings. For example:
Where I imagine most synths use self-contained messages, like: Msg: Update parameter 27 to value 10 Msg: Update parameter 27 to value 12 Msg: Update parameter 27 to value 14 Bill seems to have a synth which requires something like: Msg: Begin messing with parameter 27 Msg: Set parameter to value 10 Msg: Set parameter to value 12 Msg: Set parameter to value 14 Msg: Done messing with parameter 27 You can see how things would get messed up if there was a second "begin" message before the "end" message for the first. So, my point was that this kind of awareness of the *context* (not the data-rate) of the messages is probably best kept in the synthdrivers. - Joe ------------------------------------------------------------------------------ Why Cloud-Based Security and Archiving Make Sense Osterman Research conducted this study that outlines how and why cloud computing security and archiving is rapidly being adopted across the IT space for its ease of implementation, lower cost, and increased reliability. Learn more. http://www.accelacomm.com/jaw/sfnl/114/51425301/ _______________________________________________ Jsynthlib-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jsynthlib-devel
