Re: to infinity and beyond (Re: ArtsCompressor state)



On Wed, 15 Sep 2004, Stefan Westerfeld wrote:

>    Hi!
>
> On Tue, Sep 07, 2004 at 11:02:11PM +0200, Tim Janik wrote:
> > On Tue, 7 Sep 2004, Stefan Westerfeld wrote:
> > > There is no scale in beast currently which allows infinity on it,
> > > currently, though. Maybe 100 or 20 is a good enough approximation for
> > > infinity in practice.
> >
> > i'm not sure what "infinity" is here. suppose you have a scale ranging
> > from +12 to -96 (dB), do you:
> >
> > a) want the GUI to only do s/-96/-oo/ ?
> >    (this could easily be done with a property hint)
> >
> > b) want the GUI to provide a normal slider intervall [+12,-96[ but at
> >    position -96 display -oo and pass -G_MAXDOUBLE to the module?
> >    (this would better be done by (a) and implementing the
> >    -96 => -oo substitution in the module)
> >
> > c) want the GUI to do a *real* interpolation to oo? say we subtitute
> >    "only" 1000 for oo: we still get major oscillations.
> >    [...]
> >
> > as a consequence, beast currently supplies a usable scale down to a comparatively
> > small dB value (most dB scales out there don't actually scale down to -96), but
> > doesn't cheat by simply displaying "-96" as "-oo".
>
> In the cases I know, it is in fact not so important to get an
> interpolation to infinity (its hard to define what that means, anyway).
>
> Its just that I would like to implement for instance in the compressor
> that you can use the boundary case of oo:1 compression, which basically
> means that the compressor is just acting as a limiter.
>
> For the user, it would be nice to _know_ that actually limiting is
> taking place, so I'd like to have a slider like this:
>
>  ____________________________________________
> |        |        |            |             |
> 1:1     2:1      4:1          8:1           oo:1
>
> >From the implementation point of view, it is okay if 19.99 is right next
> to infinity (or similar). And its also okay if I have to special case
> this one value of the ratio_to_one property (20) in the module to mean
> something else than ratio_to_one normally means.

if you have to change module behaviour in that particular case, then
instead of special casing arbitrary scale values, why don't you simply
add a toggle property that:
1) disables ratio editing while the toggle is active
2) triggers the specific compression behaviour you mean to implement
3) says something like: "Limiting Mode", "Enable limiting mode of the
   compressor which works with infinite:1 compression ratio"
?

>
>    Cu... Stefan

---
ciaoTJ




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]