[gmpi] Re: 3.9 (draft) use cases and stuff

  • From: "Koen Tanghe" <koen@xxxxxxxxxxxxxxxxxxx>
  • To: <gmpi@xxxxxxxxxxxxx>
  • Date: Wed, 25 Feb 2004 01:21:37 +0100

On Monday, February 23, 2004 7:53 PM [GMT+1=CET],
Tim Hockin <xxxthockin@xxxxxxxxxxxxx> wrote:

Just my thoughts:

> It is still a requirement that a plugin be able to change the tempo.

> Is it a requirement that a plugin be able to change the meter?

Intuitively: yes. If a plugin can track tempo and meter changes, it should
be possible to hand these changes over to the host or to other plugins that
need this info.

> And is it a requirement that a tempo change be enacted or is it optional
(as in VST)?

Preferably yes, but I realize some host makers will not want to deal with
this as most of the plugins don't need this. So, maybe: hosts must support
it, but they are free to do something useful with it. (I don't like these
"undecided" things, but since you allowed an "it's optional" choice...)

> How about meter - optional or not?

Same as for tempo.

> How about transport and locate?  Can a plugin change the transport/locate
of it's time controller?


Well, the only use case I can see is an automatic score-following setup
(however exotic this might seem for some of you, this functionality already
exists in some very few dedicated standalone applications, at least for
linear performances (no skipping yet, I think)):
- all parts of a piece of music are layed out on tracks in a sequencer
- a musician mutes one instrument track
- the musician starts playing the muted instrument live
- a plugin "listens" to the incoming audio or MIDI signal performed by the
- as soon as the plugin recognizes what the musician is playing, it sets the
transport location to the corresponding position in the sequencer and sets
its transport state to "play"
- if the musician decides to skip or repeat a part of the music piece, the
plugin recognizes this and adjusts the playback position accordingly
- when the musician plays a specific end sequence of notes, the plugin
recognizes this and changes the transport state to "stopped"

Now, before I have all of you kicking me to death ;-), let me say the
This is the kind of things I expect to see more and more of in the future.
It would be nice if music technology was prepared to allow such systems to
integrate with existing music production/performance systems using a plugin
*But* as I realize this is (probably?) a rather exotic use case today for
many people, I will not insist on making this possible if it makes the GMPI
design too complex or if it slows it down significantly.
I just think it's good to at least talk about these things now, so that we
all know what will be possible and what not...

Koen Tanghe - Smartelectronix

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: