Java 更换X-Touch Mini上的LED–;麦基控制(MC模式)
我有一个Behringer X-Touch Mini,我想控制它的LED MIDI输入已经工作,但我想向控制器发送正确的LED消息。MIDI控制器处于MC模式(Mackie控制仿真模式) 我需要发送什么样的正确数据才能更改指示灯 我试过这个:Java 更换X-Touch Mini上的LED–;麦基控制(MC模式),java,midi,receiver,Java,Midi,Receiver,我有一个Behringer X-Touch Mini,我想控制它的LED MIDI输入已经工作,但我想向控制器发送正确的LED消息。MIDI控制器处于MC模式(Mackie控制仿真模式) 我需要发送什么样的正确数据才能更改指示灯 我试过这个: ShortMessage myMsg = new ShortMessage(); try { //command /channel /data1 /data2 myMsg.setMessage(8, 1, 27, 127); } cat
ShortMessage myMsg = new ShortMessage();
try {
//command /channel /data1 /data2
myMsg.setMessage(8, 1, 27, 127);
} 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();
ShortMessage
类中的字段可以帮助您使用正确的值构造消息
“CC”将是一条控制更改消息
您必须使用文档中指定的通道/控制器/注释/速度编号。例如,要点亮最后一个按钮上的LED,您必须使用note 15和velocity 1。X-Touch Mini更改LED值的文档仅在标准模式下按预期工作 Mackie Control仿真旨在使X-Touch可用于所有音乐程序(传统)。这是我唯一找到的 原来的Mackie控制器只有11个用于旋钮的LED,因此在X-Touch中无法控制2个LED。请参阅MC文档中的“V形槽环”(值为十六进制)
按钮指示灯 注:
- 与按下按钮时的输入注释相同
- 40-45,84-95
- 0=关
- 1=闪烁
- 127=开
ShortMessage(NOTE_ON, 0, note, velocity);
ShortMessage(CONTROL_CHANGE, 0, cc, value);
如使用(144)上的常量注释所述。您当前提供的8
,该命令无效
旋钮指示灯
CC(控制变更):
- 48-55
- 0=关
- 1-11=单个
- 17-27=修剪
- 33-43=风扇
- 49-54=差价
ShortMessage(NOTE_ON, 0, note, velocity);
ShortMessage(CONTROL_CHANGE, 0, cc, value);
可使用以下参数设置LED: 命令:注意=9 数据1:键=0-15
数据2:0=发光二极管熄灭,1=发光二极管点亮,2个发光二极管闪烁有什么问题?但我想将正确的发光二极管位置发送给控制器这不是问题,这是您的目标。我不知道如何将数据正确发送到设备。。我还在setMessage方法中尝试了不同的值。我不知道在哪里可以设置音符和速度。短消息具有以下参数<代码>短消息(int命令、int频道、int数据1、int数据2)阅读。