On Wed, Oct 08, 2003 at 06:51:52PM +0300, Juhana Sadeharju wrote: > 1. Instead of "GMPI gives instructions for how a plugin author should > code a plugin", I prefer approach "GMPI gives instructions to host on > how a plugin was coded". (Users could utilize existing Csound etc. open > source opcodes as plugins without altering code.) So every host has to support all possible plugin types? With GMPI we are making some decisions that TAKE AWAY flexibility from developers. The goal is to have every GMPI plugin work in every GMPI host. By making some low-level decisions NOW, we can eliminate the case of PluginA working in HostB, but not in HostC. > 2. I would combine the opcodes and the flow graph description > to the same standard. (If we are able to use Csound opcodes "as is", > then we sure want build something with them.) I don't understand what you mean. I'm not very familiar with CSound - how does an opcode map to a plugin? > 4. Plugin package would contain the instructions on how the opcodes > were programmed, any number of opcodes, any number of GUI elements, > any number of flow graphs, and a master flow graph which ties the > given opcodes, GUI elements, and graphs as one plugin processor. I think you're asking for sub-graphs as distinct entities. There is nothing in GMPI that will prevent this. In fact, it's possible that some code to do that would be part of the SDK, so hosts can load sub-graph presets. Alternatively, it should be not-hard to write a GMPI sub-graph plugin, which is itself a GMPI host which can load sub-graphs. > 5. The standard could have a standard set of graph nodes (opcodes, > GUI elements). More opcodes and GUI elements would be available > as open source or commercial plugins. I don't think GMPI is aiming to be as low-level as "Sine Oscillator" and "VCA" modules. While it COULD, there are optimizations you can make in such a modular system that GMPI can't make. Is that what you are asking about? > I have an experience on making a reverberator with LADSPA packaging, > and can say that the traditional plugin system is the main drawback in Can you elaborate? What drawbacks do you find? > It could turn out that hosts have to implement support for many > combinations of instructions, but I don't see a problem in that. The host writers do. The only reason GMPI might succeed is because it makes hosting easier. Hosts already are faced with supporting a dozen plugin formats, and THAT is the reason plugins don't JUST WORK. Then, because there are so many different hosts, plugin writers have to write 3 or 4 versions of their code. And because hosts implement slightly differently, the plugins have different workarounds for different hosts. If hosts start supporting GMPI, then (this is the theory part, now) all GMPI plugs should JUST WORK. Life is easier for everyone. To make it work, it needs to be EASY to make your host support GMPI, and there needs to be a reason to do it. That's our job. Make the host easy to implement, easy to implement FULLY, and easy to implement CORRECTLY. Make the plugins easy to implement. Then make some plugins. Free ones and shareware ones at first. If we do what we hope to do, and we get a little momentum, we'll be unstoppable. -- Notice that as computers are becoming easier and easier to use, suddenly there's a big market for "Dummies" books. Cause and effect, or merely an ironic juxtaposition of unrelated facts? ---------------------------------------------------------------------- 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