Re: [linux-audio-dev] finding the selection length with LADSPA

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] finding the selection length with LADSPA
From: Paul Barton-Davis (pbd_AT_Op.Net)
Date: Wed Oct 18 2000 - 22:33:48 EEST


>i've been playing around with ladspa, and it looks great! but i tried to
>implement a simple fadein/out plugin, and quickly realized that i don't
>know how to get the _total_ number of samples that will be processed
>(i.e. the total user selection). i'm passed the number of samples to
>process for each block, but for something like a fade or envelope, i
>need to know the total number of sample in all blocks. where do i get
>this info? sorry if it's in the docs, but i can't find it anywhere.

i'm guessing that you're trying to apply a gain curve to an
unknown number of samples, the way an editor would do if you selected
a region, and then applied an envelope to it.

for an editing operation, i think that a plugin could assume that it
was being given *all* the samples at once. but for real-time playback
use, this will never be true (and in fact, it may not even be
known). right now, the plugin has no way to to know which of these two
situations is the case.

richard (furse) may have some ideas, but i don't think there is
anything you can do with LADSPA as it stands. if your plugin is trying
to, say, "fade to zero exponentially over the duration of the
samples", you're stuck. LADSPA's model is more like "fade to zero over
<my-parameter> number of samples". i would agree with anyone who felt
this wasn't adequate.

we're heading for the territory of "host callbacks" like those in VST,
where the plugin could find out the circumstances under which it was
operating. of course, this just prompts me to be bitter about the
difficulties of us using VST itself ...

--p


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Wed Oct 18 2000 - 23:23:01 EEST