2016-09-11 14 views
0

Я создаю небольшое приложение для удаленного управления для x32 Mixing Console, теперь у меня проблема с контроллером midi im, использующим в качестве устройства ввода пульта дистанционного управления на моем малиновом пие. Его a Behringer XTouch mini PDF Doc.Java Midi Controller LED's

Я хочу т установить светодиоды на контроллере, я пробовал с этим:

void test() { 
    ShortMessage myMsg = new ShortMessage(); 
    // Start playing the note Middle C (60), 
    // moderately loud (velocity = 93). 
    try { 
     myMsg.setMessage(8, 1, 27, 127); 
       //command/ch /d1/d2 
    } catch (InvalidMidiDataException e) { 
     e.printStackTrace(); 
    } 
    long timeStamp = -1; 
    Receiver rcvr = null; 
    try { 
     rcvr = MidiSystem.getReceiver(); 
    } catch (MidiUnavailableException e) { 
     e.printStackTrace(); 
    } 
    rcvr.send(myMsg, timeStamp); 
    rcvr.close(); 
} 

Миди вход уже работает, но я хочу, чтобы отправить правильные привели позиции в контроллер (миди Контроллер находится в режиме MC).

+0

И в чем проблема? –

+0

, но я хочу отправить правильные позиции во главе на контроллер –

+0

Это не проблема, это ваша цель. –

ответ

1

У класса ShortMessage есть поля, такие как NOTE_ON, которые помогают вам построить сообщение с правильными значениями.

И «CC» будет сообщением об изменении управления.

И вы должны использовать номера каналов/контроллеров/ноты/скорости, указанные в документации. Например, чтобы зажечь светодиод на последней кнопке, вам нужно будет использовать примечание 15 и скорость 1.

+0

Я не понимаю, где я могу установить примечание и скорость. короткие сообщения имеют следующие параметры: 'ShortMessage (int command, int channel, int data1, int data2)' –

+0

Прочитайте [спецификация] (https://www.midi.org/specifications/item/the-midi- 1-0-спецификации). –