Я программирую игру в java и пытаюсь добавить музыку. Im делает именно это:Java sequencer Listener
Sequencer sequencer = MidiSystem.getSequencer();
sequencer.open();
InputStream midiFile = this.getClass().getResourceAsStream("/res/Popcorn.mid");
sequencer.setSequence(MidiSystem.getSequence(midiFile));
sequencer.start();
Проблема в том, что файл не очень мала, так ее загрузки в то время как игра уже началась. Итак, есть ли что-то вроде прослушивателя секвенсера, поэтому я могу подождать, пока звук не закончит загрузку?
Или когда нет, есть ли способ запрограммировать его для себя?
Спасибо!
Вы говорите, что это создает задержку? Вы пытались запустить это в своей собственной теме? –
Ill do tomorow :) спасибо! Но не могли бы вы объяснить, зачем нужна эта нить? Я имею в виду, что я не понимаю, когда я не делаю этого с потоком, программа wil ждет, пока последовательность не загрузится - но она, похоже, инвертирована. Зачем? – GFP
MIDI-последовательности обычно воспроизводятся в фоновом режиме. Слишком трудно начать настройку, а затем дождаться завершения этой мелодии, прежде чем делать что-то еще. –