2014-07-13 11 views
0

Sysex 메시지를 MIDI 포트로 보내고 싶습니다. 불행히도 내가 보낼 때 전혀 응답이 없습니다. 일반 MIDI 메시지 (ShortMessage)를 보내면 정상적으로 작동하지만 ShortMessageSysexMessage으로 바꾸면 작동이 중지됩니다.Java로 sysex 메시지 보내기

MidiDevice midiIn = MidiSystem.getMidiDevice(midiDeviceList[NUMBER]); 
Receiver rcvr = midiIn.getReceiver 
byte[] clearMsg = {(byte) 0xf0, 0x47, 0x7f, 0x15, 0x1e, 0x00, 0x00, (byte) 0xf7 }; 

SysexMessage sysMsg = new SysexMessage();  
sysMsg.setMessage(clearMsg, clearMsg.length); 

rcvr.send(sysMsg, -1); 

왜 포트가 메시지를 수신하지 않거나 전송되지 않는 이유는 무엇입니까?

+0

메시지가 전혀 전송되는지 여부를 루프백으로 확인할 수 있습니까? –

+0

@CL. 내가 어떻게 그럴 수 있니? 여러 MIDI 입력을 시도하고 사용할 수있는 모든 IN 및 OUT을 모니터링했지만 아무 일도 없었습니다. – TomTom

+0

출력 포트를 입력 포트에 연결하고 짧은 메시지와 SysEx 메시지를 보내고 입력에서 녹음 할 수있는 것을 (모든 시퀀서에서) 확인하십시오. –

답변

0

OSX에 깨진 MIDI 시스템이 있기 때문에 SysEx 메시지를 보내지 않은 이유가 있습니다. SysEx 메시지를 보낼 수 없습니다. MMJ는이 문제를 해결할 수있는 라이브러리 인 것 같습니다.