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

[sc-users] MIDI on the server and other MIDI advice



Hello, I am a newb - and as such I have a newb question.

I am concentrating at the moment on using supercollider for MIDI sequencing.  I read somewhere that midi message cannot be sent from the server, which means one cannot create a synthdef that sends out midi messages.  This kind of hoses me, as I would like to use Pbind and Pseq but cannot figure out how to get them to work without creating a synthdef.  Does anyone have any advice for sequencing midi in supercollider? Anything would be appreciated at this point  Currently, I am doing this (and I am sure this is not optimal):

var func5;
func5 = {arg switcher;

    var midi;
   
    midi = MIDIOut(0);
   
    switcher = switcher % 6;
        switcher.switch(
        0,
        {/*DO NOTHING*/},
        1,
                {midi.noteOn(15, 40, 127);},
        2,
       
        {midi.noteOn(15, 38, 127);},
        3,
       
        {midi.noteOn(15, 48, 127);},
        4,
   
        {midi.noteOn(15, 49, 127);},
        5,
        {midi.noteOn(15, 47, 127);},
        6,
        {midi.noteOn(15, 46, 127);}
        );
        };

and would like to do something like this:

SynthDef("MidiControl", {arg switcher;

    var midi;
   
    midi = MIDIOut(0);
   
    switcher = switcher % 6;
        switcher.switch(
        0,
        {/*DO NOTHING*/},
        1,
                {midi.noteOn(15, 40, 127);},
        2,
       
        {midi.noteOn(15, 38, 127);},
        3,
       
        {midi.noteOn(15, 48, 127);},
        4,
   
        {midi.noteOn(15, 49, 127);},
        5,
        {midi.noteOn(15, 47, 127);},
        6,
        {midi.noteOn(15, 46, 127);}
        );
        }).add;


Thanks a bunch in advance,
Nick