[gmpi] Re: Decision Time: 7.1.2

  • From: Paul Davis <paul@xxxxxxxxxxxxxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Fri, 13 Jun 2003 19:27:09 -0400

>"The host must be real complicated?", I hear you ask....not really, it
>hardly cares what datatypes are passed between plugins, the host only needs
>to know the storage size of each datatype, to allocate the buffers.

i don't agree (as a host author).

buffers are not passed only between plugins. they carry data from host
to plugin to host to plugin and back to the host and so forth. ardour
(for example) has pre and post fader plugins, plus the potential for
master out-only or control out-only plugins. in between each of those
zones are host-implemented gain stages and panning. that means that
with just one plugin in each zone, there could be 6 data type
conversions to handle a single strip processing a single cycle. imho,
that is just plain crazy.

>In Synthedit's case, the host don't try to convert datatypes automatically.
>If two pin's datatypes match, you can connect them, else you can't. Again,
>not over-complicated, works in practice.

but it also makes multiple data types essentially useless. it takes us
right back into the zone we are in today, where plugins written for
RTAS don't work with VST hosts, and MAS plugins don't work with DX
hosts. 

if there are multiple datatypes, then hosts have to support it
otherwise its just a dangling dead weight around everyone's neck.

i have heard *no-one* make a case so far to explain why, on a platform
that supports a particular format (e.g. Float32 or Int24), there is a
reason to use a different format. the best i've seen is the idea that
building modular synths out of Float64 modules with lots of
interconnects might benefit from Float32 connections; steve's
mini-benchmark appears to show this not to be the case. bit resolution
isn't an argument, conversion to Int16 or whatever isn't an argument,
etc. etc.

of course, nobody is going to suggest that Float32 be used on a system
that can't support it, and that's why early on in these discussions,
there was an agreement that systems should probably support
Float32. if they don't and we want GMPI to cover them, then sure, we
need to support another format *** BUT *** not in the same host and
not in the same plugin package. the system for loading Int24 plugins
into a handheld is likely to be totally different (even the OS is
likely to be different), and so even trying to package them together
is a bit silly.

"one format to rule them all, and in the loudness bind them."
"errr, ok, make that two."



----------------------------------------------------------------------
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

Other related posts: