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

[sc-users] Re: [sc-users] MOTÖR49/61



Hi,

Behringer does still make them sort of. They are called X-Touch Compact. Not exactly the same as the BCF2000, but very close. I haven't actually tried them however.

Cheers,
Patrick


From: owner-sc-users@xxxxxxxxxxxxxxxx <owner-sc-users@xxxxxxxxxxxxxxxx> on behalf of mlang@xxxxxxxxxx <mlang@xxxxxxxxxx>
Sent: December 20, 2019 8:03 AM
To: sc-users@xxxxxxxxxxxxxxxx <sc-users@xxxxxxxxxxxxxxxx>
Subject: [sc-users] MOTÖR49/61
 
Hi.

I used to use a BCF2000 which recently died.
So I got myself a "new"[1] controller with motorized faders.
And wrote a quark for using it with SC.

https://github.com/mlang/Motorized.quark

I am aware of the ControlSurface quark, but I wasn't really able to do
with it what I wanted.  MOTOR is a pretty simple convenience class
that provides a proxy for every type of control available on the MOTÖR.

Examples

// Initialise on a Linux system.

(
MIDIClient.init(verbose: false);
MIDIIn.connectAll;
MIDIClient.destinations.detectIndex {|ep|
        ep.device == "MOTÖR49 Keyboard" and: ep.name == "MOTÖR49 Keyboard MIDI 1"
} !? {|index|
        MOTOR.midiOut = MIDIOut(0).connect(index);
        MOTOR.fader(\master, \db, s.volume = _).value = s.volume.volume;
        MOTOR.stop({ thisProcess.stop });
        MOTOR.play({ thisProcess.run });
        MOTOR.record({ if(s.isRecording, { s.stopRecording }, { s.record }) });
};
)

// Basic keyboard.

(
~notes = Array.newClear(128);
MOTOR.noteOn(\unipolar, {|amp, num|
        ~notes[num] = Synth(\default,
                [\freq, num.midicps, \amp, amp]
        )
});
MOTOR.noteOff({|vel, num| ~notes[num].set(\gate, 0) });
)

// Use the faders to "draw" sin, cos and tan functions.

(
var faders, resolution, offset, draw;
faders = Array.fill(24, {|i| MOTOR.fader(i+1, \bipolar) });
resolution = MOTOR.encoder(1, [8, 8+128, \lin, 1], {
        offset.spec = [
                0, resolution.value-8, \lin,
                1, min(offset.value, resolution.value-8)
        ];
        draw.value
});
draw = {
        #[\sin, \cos, \tan].do{|f, i|
                8.do {|j|
                        faders[(i*8)+j].value = (pi*2/(resolution.value-1)*(j+offset.value)).perform(f)
                }
        }
};
offset = MOTOR.encoder(2, [0, resolution.value-8, \lin, 1], {
        draw.value
});
draw.value
)

[1]: Behringer doesn't make them anymore.  However, amazon.de still has
two new models in stock...

--
CYa,
  ⡍⠁⠗⠊⠕

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.birmingham.ac.uk/facilities/ea-studios/research/supercollider/mailinglist.aspx
archive: https://listarc.bham.ac.uk/marchives/sc-users/
search: https://listarc.bham.ac.uk/lists/sc-users/search/