[gmpi] channels, resources and other stuff

  • From: Marco Ballini <marcoballini@xxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: 09 Oct 2003 18:14:51 +0200

Hello,
I'm reading messages from archives (I'm new to this list) and it seems
me that some concepts are not considered in the items of the agenda.
I mean, I've been writing my requirements and interface.
They are not yet completed, but approching API finalization.
Some concepts that I use in my API are fundamental in its design,
but I didn't see considered in the messages I read.
I'd like also to understand the exact goals of this API (for example if
you could add, remove plugins or change connection between them while
others are running).
Here are some questions (forgive me):
- How multiple voices are handled in a synth plugin?
(This led my to my definition of channels.) 
- Is there an agreement on what a "channel" is? 
How would you handle a mixer with arbitrary inputs? (I use channels for
that)
- Will network plugins be allowed (plugin that contain other plugins in
a graph. in that case the host could be a thin layer around a network
plugin)? 
- Will sequencer plugins be allowed (on the same graph level of the
plugins it controls)? 
- Will shared resources be allowed (for example a wave, an envelope, a
song or a graph-configuration shared between many plugins)?
- Will developers have to write many plugins (as in LADSPA) to allow a
control (example: cut-off, resonance, volume) to be handled both with
single events or with a stream of values (for example from an audio
output from another plugin)? Will have the user to destroy and recreate
the plugin to change the type of connection?
- Is the distiction between audio data and control data realy needed?
(I consider audio and control just *hints* for a parameter)
- How will memory be available to a plugin (a function, an event,
or...)?

I hope this is not messing the discussion (I'm late on this
mailing-list: thanks Paul for making me notice it).
Tim offered to tell me what was decided on this list for each item 
of the agenda, to speed me up to the discussion (thanks Tim).
But it seems to me that the question I've posed are not considered in
those items (they are all finalized to the construction of a no-stops
real-time synthesis and sequencing environment for musical compositions
and improvisations).
I could post some of my definitions (for concept like channels, ports,
parameters, group of parameters) with some design issues, but first I
want to understand if the goals and target users and developers of GMPI
API coincide with my goals.

ciao,
Marco








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