Matthew Xavier Mora <mxmora@xxxxxxxxx> wrote: [ 3) Use MIDI whenever possible. MIDI data can already be [ incorporated with audio streams over FireWire which means we won't [ have to invent another protocol to send parameter changes. Plus [ existing hardware will be able to manipulate your GUI. Also don't [ think MIDI speed is a limiting factor. "MIDI over alternate [ transports" already takes into account send MIDI data at higher [ than 1.0 speeds. [ [ 4) GUI separate from processing. If your GUI-to-processing [ interface uses MIDI internally then it is no problem sending the [ commands over a transport to control your processing. MIDI should certainly be supported, but I recommend that it not be used as part of the API interface. MIDI parameter values - being limited to 128 or 16384 discrete values - just do not have the range that modern applications require. The API, particularly between GUI and internal, but between any component, should be focused on floating point values for parameters, or at least 32-bit fixed point values. Whatever resolution is settled upon as the GMPI standard, it can be down-converted to MIDI resolution at the transport layer. I would also vote against having a dual API which supports both MIDI parameters and higher resolution GMPI parameters. Such a split standard is more confusing, and cripples the new standard by introducing official limitations merely for backwards compatibility. If actual MIDI data comes from anywhere but a transport (where the system can translate automatically), I think it will be within the capabilities of GMPI developers to convert their values to e.g. float before passing them to the GMPI API. On a related note, perhaps the transport drivers should have some sort of configuration GUI which would allow the operator to decide whether or not MIDI is used. In the case where the transport is connected to a MIDI port with MIDI device(s) attached, the choice is obvious to down-convert parameters to MIDI resolution. But when MIDI interleaved over FireWire is used to connect two machines, the operator may want the choice between selecting MIDI for compatibility, and some sort of native GMPI transport (provided at the transport driver level) for maximum fine tuning of values. Brian Willoughby Sound Consulting ---------------------------------------------------------------------- Generalized Music Plugin Interface (GMPI) public discussion list Participation in this list is contingent upon your abiding by the following rules: Please stay on topic. You are responsible for your own words. Please respect your fellow subscribers. Please do not redistribute anyone else's words without their permission. Archive: //www.freelists.org/archives/gmpi Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe