On Mon, 2008-06-02 at 20:11 +0200, Wolfgang Woehl wrote:
Paul Davis:
so when a user decides to insert a plugin that
has 2 inserts and 2
outputs in between 2 plugins that have 1 output and 1 input
respectively, what do you propose to do with the signal?
when a user adds a 1 input plugin after a plugin with 2 outputs,
what do you propose to do with the signal?
when a user deletes a 1 in/1out plugin from between a 1out and a
2in plugin, what do you propose do with the signal?
I must be missing something because the answer seems so simple:
Clone / mixdown on all of these occasions? Plus a walk through
affected regions of the plugin chain to reconnect?
sure, thats a good high level description of what ardour is doing. but
think about what this actually means in practice: it means that your
chaining logic is actually responsible for plugin instantiation (and
destruction). a given plugin "unit" might have 1, 2 or more actual
plugin instances within it. but if plugin instantiation is being done
from within the chaining logic, how does it share code that the host
might use that overlaps with this in some way?