> > Disagree, because if the buffer is processed inplace it becomes the > > plugins responsibility to clear this flag if it writes anything into the > > output buffer. > > I'd rather go with the "flag is on the buffer" approach, simply because > "being silent" is a property of the buffer in the first place. > As for the in-place case, this is no problem, because the plugin can just > change the "silence flag" to the "non-silence" state if it writes anything > to the buffer. I don't see the problem here. I agree that it is a property of the buffer, but it MAY be cleaner to make it a property of the port. We don't need to decide that yet. Making it a property of the buffer requires that ALL plugins clear the silent flag on their output buffers, even if they don't do any silence optimization, which violates the idea that if a plugin doesn't care about silence, it doesn't need to do anything. It adds a REQUIRED step for every plugin. > > OTOH if the flag is on the port, then a compliant plugin can copy the flag > > to the appropriate output port. > > I don't get the point: if the plugin sees the incoming buffer is silent, it > can also just mark the output buffer as silent, no? Or is there something > more complicated involved here? Marking the port silent can be totally ignored by the plugin. Only plugins that CARE about silence have to do anything at all. Of course, one silence-ignorant plugin ruins it for all the downstream plugins, and we'll inevitably end up with a silence-detection plugin. :) Again, details details. ---------------------------------------------------------------------- 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