Re: [linux-audio-user] Behringer BCA 2000 - has anyone tried it ?

From: Mario Lang <mlang@email-addr-hidden>
Date: Tue Mar 01 2005 - 19:04:20 EET

Mario Lang <mlang@email-addr-hidden> writes:

> Spencer Russell <Spencer.Russell@email-addr-hidden> writes:
>
>> On Tue, Mar 01, 2005 at 09:04:02AM -0500, Joe Hartley wrote:
>>> On Tue, 01 Mar 2005 11:02:31 +0100
>>> Mario Lang <mlang@email-addr-hidden> wrote:
>>> >
>>> > Yes, it is, and I consider this behaviour the only sensible.
>>> > For me, the other dials (those that wrap) are broken, and
>>> > they are a serious accessibility hassle.
>>>
>>> I'm with Mario on this. The last thing I'd want to have happen is to
>>> have a parameter wrap from full off to full on because the controller
>>> sent out a value of 3..2..1..0..127.
>>>
>> I think I would prefer the dial to send relative information as
>> to what direction it's turning, so that you can have more than
>> 127 different values controlled by one knob. It's not exceedingly
>> difficult to take a wrapping controller and make it functionally
>> the same, but if the encoder just stops at 0 and 127, it makes
>> that impossible.
>
> Er, no, thats actually very easy, just reset its value to 1 whenever it hits
> 0. You can write to any controller of the BC{R,F}2000 to set its current
> value.

And here is real code to illustrate what I ment, tested, and works:

(
var value, oldValue;
value=0; oldValue=64;
c=BCF(\r1, 1, [0,127,\lin,1,64], {|val|
        value = value + (val-oldValue);
        oldValue = val;
        if (val == 0) {
                c.value=(oldValue=2);
        } {
                if (val == 127) {
                        c.value=(oldValue=125);
                }
        };
        value.postln;
})
)

And there you go, a software-based inifinite rotary.

-- 
CYa,
  Mario
Received on Tue Mar 1 20:15:10 2005

This archive was generated by hypermail 2.1.8 : Tue Mar 01 2005 - 20:15:10 EET