Привет, я программирую Java на Windows и очень плохо знаком с работой с MIDI-интерфейсами.
Мне удалось получить Java для воспроизведения миди-звуков через объекты синтезатора, изначально через динамик компьютера, однако я хочу отправитьMIDI-сообщения на лету в отдельное приложение для синтеза, а именно FLStudio.Я думаю, что я должен сделать интерфейс Java похожим на аппаратное устройство MIDI, но я не знаю, как это сделать.Я также думаю, что это может иметь какое-то отношение к Transmitter или MidiDevice, но я не уверен.
Кто-нибудь знает, как я мог бы начать это делать.Я просмотрел весь Google по этому поводу, но всегда получаю те же 2 документа:
http://www.jsresources.org/faq_midi.html и http://www.ibm.com/developerworks/library/it/it-0801art38/
Извините, если этот вопрос задавался ранее, но яне могу его найти.
Вот что у меня так далеко.Любая помощь будет принята с благодарностью.
import javax.sound.midi.*;
public class Midi
{
public static final void main(String args[]) throws Exception
{
//create and open synthesizer
Synthesizer syn = MidiSystem.getSynthesizer();
syn.open();
//open midi channels (we'll use channel 5)
final MidiChannel[] mc = syn.getChannels();
//set instruments
Instrument[] instr = syn.getDefaultSoundbank().getInstruments();
//Possible ways to send midi to FLStudio, rather than inbuilt
//javax.sound.midi.Transmitter?
//javax.sound.midi.MidiDevice?
// change instrument, using midi codes
mc[5].programChange(instr[0].getPatch().getProgram());
// Play note
mc[5].noteOn(50,1000); //(noteNumber, velocity)
}
}