[gmpi] Re: 3.11 topic: Dynamic plugin structure

  • From: "Jeff McClintock" <jeffmcc@xxxxxxxxxx>
  • To: <gmpi@xxxxxxxxxxxxx>
  • Date: Wed, 21 Apr 2004 07:18:23 +1200

I'm thinking dynamic configuration is difficult to do seamlessly.  A plugin
should not change it's parameters in response to say, a program change.
Same with audio inputs/outputs.

Simple solution.  Let the plugin request a reload.

well, not necessarily a *full* reload.

At the plugin's request, the host will re-query plugin's configuration
(number of parameters, number of audio ins/outs).  The host will make any
adjustments it sees fit.  This may interrupt audio streaming and automation
playback.

Technically this is easy to do.  Not much different than unloading/reloading
a VST plugin.
  It's how SynthEdit does dynamic reconfiguration, there is a short dropout
in the audio as the DSP engine stops momentarily.  This is not seamless, but
I think we still satisfy the use cases.....

Use cases:.

* Complex Synth with 10 selectable filter types, each filter has different
parameters.

 This doesn't require dynamic parameters.  The number of parameters is
fixed.  The show/hide parameter idea satisfies this requirement.  It's easy
to implement, no big overhead. No worrys about how to handle automation.


* Compressor, need mono, stereo and 5.1 surround version.

   As Steve said,  The easiest solution is probly to just write 3 plugins.
However, if you did write an all-in-one plugin, you wouldn't expect to
switch mono/stereo mid-song.  So re-instantiating the plugin is no big
hassle.


*Modular Synth (Reaktor etc).

In a Modular synth, the user can add/remove filters (hence parameters).
Again though, this isn't something you do mid-song.  The user can tolerate a
re-instantiation.

Hope that makes sense, I'm interested to hear all your opinions...

Best Regards,
Jeff



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