[linux-audio-dev] ecamegapedal catches up (was: (Re: kladspa?))

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

Subject: [linux-audio-dev] ecamegapedal catches up (was: (Re: kladspa?))
From: Kai Vehmanen (kai.vehmanen_AT_wakkanet.fi)
Date: Wed Oct 17 2001 - 20:58:00 EEST


On Wed, 17 Oct 2001, Steve Harris wrote:

> This is really cool. I've allready found some serious bugs in my code. I
> feel churlish about reporting bugs, but I'm going to anyway ;)

After checking 'churlish' from my dictionary, I can assure that your not
churlish at all. :)

> Theres something funny going on with the ranges, the bottom range works
> unless its < 0, when it seems to turn -70 into -0.7. The top range doesn't
> seem to be set right either, but I can't spot a pattern.

Yes, I made a last minute change to support floating point params (Qt
sliders are int-only) and that didn't work for negative numbers. But
that's fixed now in CVS.

I also found out an embarrasing bug in libecasound's LADSPA code. The code
to 'handle LADSPA-hints -> ecasound chainop hints' conversion was
otherwise ok, but had the following "minor" bug:

- LADSPA_IS_HINT_SAMPLE_RATE(plugin_desc->PortDescriptors[m])
+ LADSPA_IS_HINT_SAMPLE_RATE(plugin_desc->PortRangeHints[m].HintDescriptor)

Arrggh, and the same for all hint-fields except rangehints->lowbound and
rangehints->upperbound. I admit I deserve the "how about testing your code
even once" comment. :)

The above bug is fixed in ecasound CVS, and in the upcoming 2.1dev3 and
2.0.4 (stable) releases. Ecamegapedal works with both.

Another new feature is explicit support for params with
LADSPA_IS_HINT_INTEGER enabled. I tested this with your Analogue Oscilator
plugin (id:1205). While testing I also found a couple of plugins that
are clearly missing the flag:

- Ringmod with LFO (id:1189), param "Modulation depth (0=none, 1=AM, 2=RM)"
- Diode processor (id: 1185), param "Mode (0 for none, 1 for half wave,
  2 for full wave)"

> A really nice feature would be a bypass button (momentary and/or toggle).

I've had three big items on my ecamegapedal todo-list: 1) sliders for
params, 2) configuration screen for engine buffering params, 3) bypass and
mute buttons... so we are thinking along same lines here. Anyway, bypass
is still on the todo-list, but it should be a quick thing to add
(libecasound already has the necessary function, so all is needed is
adding the button).

-- 
 http://www.eca.cx
 Audio software for Linux!


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 17 2001 - 20:56:44 EEST