First, this Profiles discussion is OT. We're supposed to be gathering Requirements, yes? The requirement comes down to a much simpler question: Do we support multiple datatypes? If we agree that YES we do, then we eventually need to decide how. However, Profiles have more potential applications, too. > You're right, from the perspective of a plug-in developer who's only > targeting one market, like DAWs, there is no net difference. The > benefit is that profiles allow the same basic GMPI architecture to be > used in multiple applications and markets, while keeping the > technical requirements of each individual market out of the way of > all the other markets. This is not specific to profiles, of course. > If there were some per-plug or per-audio-pin enum property for sample > datatype, and no profiles, then any GMPI plug-in could use any enum > value (or maybe set of enum values, depending). That plug could only > be used in hosts that support the set of enums it uses. However, > Whereas, if there were some per-plug or per-audio-pin enum property > for sample datatype, and profiles -were- used, then each GMPI > plug-ins would be written with one or more profiles in mind, and > could use -only- the enum values permitted by those profiles. That The argument sounds nice, but is misrepresented, I think. It's no more difficult or less difficult with either method. If the host has to support more than one profile, it is the same as the host supporting more than one datatype. If a Plugin is written with one profile in mind, it only has one datatype. It makes a lot of sense to me to say "When you buy plugin X, you get the Float32, Float64, AND Int24 versions in one package! Compare that to competitor Y who only gives you Float32." Whereas profiles assume some a priori knowledge about where Int24 is useful. If I have a very full-featured host, I shouldn't need to declare that I support 'Mobile Audio' profiles just to get Int24 support. We're saying the same answer, just different words, I think. Am I wrong? Our requirement then is: Plugins have single I/O datatype for all inputs and outputs. How it is done is not yet important, I think. Now gete everyone to agree to that requirement. Tim > plug could only be used in hosts that support any of those same > profiles (typically a host would support only one or two profiles -- > maybe just float32 and float64 in the case of DAWs), and since the > number of enum values allowed by a given profile is small (in the > optimal case, just one), host implementation is significantly > simplified. Full interoperability of plugs and hosts within a given > profile is guaranteed, improving customer satisfaction. And focuses > target platform choices for developers. > > -- Chris G. > > ---------------------------------------------------------------------- > 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 > ---------------------------------------------------------------------- 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