Subject: Re: [linux-audio-dev] quasimodo/csound opcodes
From: Paul Barton-Davis (pbd_AT_Op.Net)
Date: Tue Jun 06 2000 - 17:50:43 EEST
>no, it isn't, but it can't be done 'automatically', and I'm not sure
>at that point that the wrapper files the script generates are
>good enough to say :"ok, let's tweak them, knowing that
>if we have to rebuild it again, all the hand-crafted work
>will be lost".
I'm suggesting going beyond that: I'm suggesting that the Csound
opcodes should be forgotten, or rather rewritten, to use a less
"obscure" API.
>? I don't understand your point. This is what is done, except that Run
>calls
>the opcodes by passing the right structure.
Right, and thats what I'm suggesting be stopped. Its a horrible kludge.
>yes, and I think it's too bad. The more I think of this, the more I think
>that the way we (ladspa) handle plugin is not general enough, but
>it can't be more general.
>I mean, only simple plugins have well defined ports, that manipulate
>LADSPA_Data. But if you want a list of parameters (as with an envelope),
>then you have to cope with LADSPA_DATA pointer.
>With the current scheme, you have to provide a function that takes an
>envelope
>and setup the list (ie set_envelope_list(env*, ....)). ie: the host knows
>it manipulates
>an envelope, not some kind of general plugin.
I think you've missed my point. If you consider the envelope/wavetable
to be private to the plugin, there is never any need for the
host-as-plugin-executor to have any idea about this
stuff. Modifications to the envelope/wavetable happen either via:
* a plugin-provided UI
* a host-generated UI
* programmatically within the plugin
>There is another problem with csound opcodes: some of them call hosts
>functions
>(to stop it for example)...
Right. And LADSPA has no capability right now, I think, for a plugin
to say "I'm done". This *definitely* needs to be added. There are some
other things that the Csound opcodes can do that need to be
considered, but I would have to sit down and think about them first.
--p
This archive was generated by hypermail 2b28 : Tue Jun 06 2000 - 18:17:58 EEST