[gmpi] Re: Generalized Music Plugin Interface list is now onl ine

  • From: David Olofson <david@xxxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Tue, 11 Feb 2003 16:25:24 +0100

On Tuesday 11 February 2003 15.18, Frederic Vanmol wrote:
> Talking to hardware is a separate problem. I feel that's for the
> host to =3D do,=3D20
> not the plugin. But I realise it should be possible for a plugin to
> pass =3D midi=3D20
> messages to hardware or to other software that supports it.

"Driver plugins".

Normally, even if you use this approach in a host, the driver plugins=20
would really be part of the host. (Internal or dynamically loaded,=20
but not really valid plugins.) However, it might be interesting to=20
keep this philosophy in mind for things like talking to MIDI devices.=20
There are some issues with doing audio I/O in plugins (the host has=20
to know which plugin is going to do this, as that plugin will block=20
on the I/O), but it doesn't really make much of a difference when it=20
comes to MIDI. What you get is basically a plugin that has control=20
outputs, but no explicit input (since it reads from some MIDI API),=20
or vice versa. (Or both, but that would imply that the plugin breaks=20
the feedback loop it apparently creates if you use both inputs and=20
outputs in a net. This is another issue with audio driver plugins,=20
since with some APIs, you can't open input and output separately.)


> However, I'd rather not have a plugin be told to start a
> voice/sound/... =3D by a=3D20
> midi note on message or to have to parse a midi pitch message to be
> able =3D to=3D20
> function correctly. In my opinion, midi should be completely
> optional for=3D a=3D20
> plugin.

Yes, I agree. Maybe a control datatype "MIDI" would be handy? That=20
way, you can handle the actual MIDI I/O and MIDI parsing separately,=20
doing the latter in totally portable and reusable plugins.

(Normal control datatypes in XAP are float, double, integer, string=20
and raw data, BTW. I'm not saying GMPI should have the same set, but=20
it's rather handy to have enough to implement pretty much any=20
host/plugin or plugin/plugin interaction through the same interface.)


//David Olofson - Programmer, Composer, Open Source Advocate

=2E- The Return of Audiality! --------------------------------.
| Free/Open Source Audio Engine for use in Games or Studio. |
| RT and off-line synth. Scripting. Sample accurate timing. |
`---------------------------> http://olofson.net/audiality -'
   --- http://olofson.net --- http://www.reologica.se ---


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