|
From: Steve H. <S.W...@ec...> - 2002-10-29 15:19:29
|
On Tue, Oct 29, 2002 at 04:25:41 +0100, Benno Senoner wrote:
> The process() code of LADSPA usually does
>
> for(i=0;i< numsamples; i++) {
> sample[i]=.....
> }
...
> in linuxsampler it would be better to process all in a single pass
> eg:
Not neccesarily, once the inner loop goes over a certain size it becomes
/very/ inneficient. Infact one of the common ways of optimising bigish
plugins is to break them into smaller passes.
Obviously you wont win every time, but I think inlined finction calls to
LADSPA run() routines will be faster on average.
Obviously, things like mixers should be native, but not for eg. ringmods
(multipliers), a decent ringmod has antialiasing code in (though mine
doesn't, yet).
> An additional issue about LADSPA is that it is only suitable for audio
> processing but not for midi (or event)-triggered audio generation.
No, its not suitable for MIDI, but it can certainly do unit generation,
infact AFAIK the only bandlimited oscilators for Linux are LADSPA plugins.
You just the the CV model for triggering.
- Steve
|