> Just mark each channel/pin/whatever (ie one mono audio stream in or > out) with a context ID. Same IDs means same inner loop, provided that > loop is in-place safe. > > If a plugin is *totally* in-place broken, each audio input or output > will will have it's own plugin unique context ID. This tells the host > that there must be one unique buffer connected to each pin, or weird > things will happen. Once again, David conceives something clever and deceptively simple. I like this idea quite a lot, assuming that my othe rproposal goes down in flames (with mine, you don't need to know ANYTHING about in-place safety). > Please note that I came up with this just now, and haven't thought all > that much about it. There might be holes in it. The idea I'm fighting with is this: It seems logical that for mono-stereo conversion you would pass the same input buffer to both channels (not a copy, the same buffer). But then we impose that the plugin be aware of this aliasing, and handle it. There ARE solutions, but it sems to me to be best if we dictate that a single buffer may only be involved in one stream at any given time. This means you can't get the same buffer on 2 inputs, and you can't return the same buffer on two outputs. With your proposal it is possible to do, but it can get complicated fast. ---------------------------------------------------------------------- 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