[gmpi] [GOALS] Some proposed 'North Star' goals

  • From: Chris Grigg <gmpi-public@xxxxxxxxxxxxxx>
  • To: gmpi@xxxxxxxxxxxxx
  • Date: Wed, 12 Feb 2003 00:20:35 -0800

I guess I have two small things to offer at this very early stage of the GMPI discussion, both coming just from me, nothing remotely official.

First, a little advice from the POV of someone who's been involved in standards development for a while. GMPI is a big undertaking. Resist the temptation to jump straight to implementation concepts, as the particulars will tend to get in the way of the bigger picture. Suggest you first consider higher-level goals, then for each sub-part gather/invent candidate technical solutions, then evaluate those, and only then select implementation concepts. (I'm developing my own list of ideas to post, but am saving them until a later stage of the process to see whether what they do is really what we as a group want.) Also, for each of us, attachment to our prior work (however good) and experience may be a danger.

Second, I'd like to offer some proposed 'North Star' principles & goals (see below), some of which are very, very obvious, but it still might be useful to state them -- and all of which the group is of course free to utterly ignore, or adopt, as you all may see fit.

So carry on, hope this helps.

-- Chris

// -------------------------------------------------------------------------
//  Chris Grigg
//  Standards, Beatnik, Inc.
//  Chair, Technical Standards Board, MIDI Manufacturers Association
//  Chair, XMF Working Group, MIDI Manufacturers Association
// -------------------------------------------------------------------------
//  chrisg@xxxxxxxxxxx    tel US 510-420-0241    fax US 510-450-0241
// -------------------------------------------------------------------------
//  Beatnik: Enhanced Audio Solutions for the Web, Games and Digital Devices

Suggestions for general principles & goals for the GMPI process:

- Look for a model that works well in all the runtime environments we care about (list of which is TBD)

- Take into account existing plug-in models, but don't be afraid to look farther too

- Look for new niceties to help address important shortcomings in existing plug formats (list of which is TBD)
> User-level functionality improvements
> Developer-level functionality improvements
> Developer-level efficiency improvements incl. helping to streamline the DSP/processing thread

- As far as possible, don't let any of the new niceties gum up the DSP/processing thread

- Where appropriate and possible, leave room for future extensibility

- As far as possible, streamline the plug development process, e.g.:
> Support universal and very common plug operations with a supplied (eventually highly optimized) library
> Regularize interface and calling conventions throughout the API as far as possible
> Regularize calling conventions across hosts as far as possible
> Encapsulate platform differences well
> Leverage existing technologies where useful and appropriate
> Biz issue: Eschew IP-encumbered technology, e.g. proprietary & GPL (...I can see the hate mail coming already...)

- As far as possible, streamline the host development process, e.g.:
> Specify the host side of the plug-in interface well. (Maybe document its obligations and options ala 'design by contract'?)
> Provide good guidance for host implementors, including at a minimum example stub calls to the plug-ins
> Ideally, deliver source for an example host framework


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:

  • » [gmpi] [GOALS] Some proposed 'North Star' goals