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: Conrad Parker (conradp_AT_cse.unsw.EDU.AU)
Date: Thu Oct 19 2000 - 09:05:29 EEST


On Wed, Oct 18, 2000 at 06:25:28PM -0400, douglas irving repetto wrote:
>
> it seems to me that an awful lot of filter-type operations are most
> conveniently handled by a simple "select the region and run the filter"
> model. and for any process that requires parameters to move from one
> value to another over the run of the process, the plugin needs to know
> the total number of samples that have been selected. having a user type
> in a time parameter could be both awkward and potentially inaccurate.

as most people have pointed out, LADSPA is only designed for dealing
with audio streams, not segments of a given length. Trying to twist
the plugins to do anything else is only going to get messy, both for
you writing the plugin and for the apps needing to coordinate more
information with the plugin.

I'm planning to handle this kind of thing (fades, envelopes) in sweep
as follows: rather than setting individual numeric parameters, the
user could provide (draw...) an envelope describing how that parameter
should vary over the selection. Sweep would then run the LADSPA plugin
in short sections, each time with slightly different parameter values as
given by the contour. This shouldn't be too much trouble from the
point of view of sweep's LADSPA plugin handler, because it runs
those plugins in many short sections already anyway.

In terms of quality, this shouldn't be any worse than the results
given in a realtime streaming environment (eg. in gdam or quasimodo),
where the user manipulates a dial to change LADSPA parameter values
over time.

The point is that the fading / enveloping ability is managed by the
host, not by the plugin. This is especially important in sweep if
you've got a selection made up of many discontiguous regions, and a
parameter envelope that crosses these. LADSPA plugins are invoked once
for each region of the selection, and it really wouldn't make sense
for them to have to understand that all this is going on (as they would
if they had to manage their own parameter fading and other variations).

Anyway, I've planned and started speccing out this enveloping stuff
for sweep, but it's not yet implemented. We can discuss it on
sweep-devel if you like :) The result would be that a fade could be
done using the existing LADSPA amplifiers, and filter cutoffs etc.
could be similarly controlled.

I'm pretty happy with the way LADSPA is defined, it allows plugin
writers to concentrate on making useful effects without having to
worry too much about the many ways in which they can be used.

Conrad.


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

This archive was generated by hypermail 2b28 : Thu Oct 19 2000 - 09:41:14 EEST