I havn't heard strong reasons for using 64 bits for audio. My understanding is that 16 bit int is OK (CDs use it).... 24 bit integer is wonderfull..... 32 bit float is even better (soothes the most rabid audiophile). 64 bit is needed for filter coefficients, but that happens *inside* your plugin. Ron suggested a modular system might go "low-level" and pass filter coefficients between plugins. I suggest this is "sub-modular" processing. My reasoning: Sub-modular synths, like SyncC modular, where you design your own filters, also support single-sample audio feedback (to make IIR Filters). Single-sample processing is beyond GMPI, therefore double precision comunication is also out of scope. What about 24 bit integer samples (card-based DSP). Mayby that is more relevant? If so, do we go the whole hog, and make sample format negotiable? (float, double, int)..... To summarize: *single precision float is cool. *double precision is used in hard-core modular synths, but so is single-sample processing, I suggest both these are out of scope. *24 bit integers are here now, used in card-based DSP. My life is MUCH easier with single precision floats only...... But to be realistic, mayby this needs to be enumerated/negotiated......same as interleaved/not. >Process32() and Process64(). I don't like this approach, as it's not extensible. An enumerated type would be easier? As before, I expect most of us to live in the 32 bit float world. The double-precision and 24 bit crowd would play in their own sandpit, happy in the knowledge that 80% of their code and investment is transportable to the mainstream. I absolutely arn't going to code for all three cases in each plugin i write. As far as bugs go... that's a freaking cockroach sandwich..... Best Regards, Jeff ----- Original Message ----- From: "Paul Davis" <paul@xxxxxxxxxxxxxxxxxxxxx> To: <gmpi@xxxxxxxxxxxxx> Sent: Wednesday, June 11, 2003 8:54 AM Subject: [gmpi] Re: Decision Time: 7.1.2 > > (g). Plugins have 2 process calls, Process32() and Process64(). By > >default in the GMPI headers, Process64() maps directly to Process32 with > >casting back and forth. Plugins who wish to override/supply their own > >Process64 routine can do so. Plugins who do not wish to do so can simply > >implement Process32, and 64 bit will be transparently handled for both > >the host and plugin. > > before discussing how to support 64 bit data flow between plugins, it > first needs to be established that there are worthwile benefits from > doing so. the best i've seen so far has been ron's point about > building modular synths out of GMPI plugins, which was somewhat > countered by steve's observations based on LADSPA. > > otoh, i sort of like this proposal. the problem with it is that a > plugin author will spend a non-trivial amount of time on two different > versions of their code, which may be rendered wasted by the decision > of most hosts to support only one format. even so, it does have merit > as a very agnostic policy. > > please just don't suggest Process32Interleaved() and its couins :)) ---------------------------------------------------------------------- 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