Внешнее миди-устройство JFugue 5
Долгое время пытались отправить последовательность на устройство midi с помощью jFugue 5:
MusicReceiver device = getDeviceByName("name");
Player player = new Player();
Pattern pattern = new Pattern("A");
device.sendSequence(player.getSequence(pattern));
Не удается выполнить "Необработанное исключение типа MidiUnavailableException" на "device.sendSequence".
static MidiDevice.Info getDeviceInfoByName(String name) {
for (MidiDevice.Info info : MidiSystem.getMidiDeviceInfo()) {
if (info.getName().equals(name)) {
return info;
}
}
return null;
}
static MusicReceiver getDeviceByName(String name) {
return new MusicReceiver((MidiDevice) getDeviceInfoByName(name));
}
1 ответ
Вы пытаетесь разыграть экземпляр MidiDevice.Info
что вы получаете от вашего getDeviceByInfo
к MidiDevice
, Замените свой getDeviceByName
функция со следующим:
static MusicReceiver getDeviceByName(String name)
throws MidiUnavailableException {
MidiDevice.Info info = getDeviceInfoByName(name);
return new MusicReceiver(MidiSystem.getMidiDevice(info));
}