Javax Midi Sequencer - isRunning() always returns
Javax Midi Sequencer - isRunning() always returns "false" when running!!!
Im making a mars lander program for an assignment and ive decided to put a midi danger alertin a thread for when temperature rises above a certain limit then when it falls i want the midi to stop.
I dont know when to restart/stop it though because its telling me that its never running! - Why?
Heres a portion of the code:
if((atmosphereDanger ==true) || (speedDanger ==true) || (temperatureDanger ==true) || (stormDanger ==true) || (radiationDanger ==true)){
try{
Sequencer sequencer = MidiSystem.getSequencer();
sequencerRunning = sequencer.isRunning();
if(sequencerRunning ==true){
System.out.println(sequencerRunning);
System.out.println("Are dangers - was running");
}else{
System.out.println(sequencerRunning);
System.out.println("Are dangers - wasnt running - now running");
sequencer.open();
sequencer.setSequence(MidiSystem.getSequence(midiFile));
sequencer.start();
}
}catch(MidiUnavailableException mue){
System.out.println("Midi device unavailable!");
}catch(InvalidMidiDataException imde){
System.out.println("Invalid Midi data!");
}catch(IOException ioe){
System.out.println("I/O Error!");
}
}
if((atmosphereDanger ==false) && (speedDanger ==false) && (temperatureDanger ==false) && (stormDanger ==false) && (radiationDanger ==false)){
try{
Sequencer sequencer = MidiSystem.getSequencer();
sequencerRunning = sequencer.isRunning();
if(sequencerRunning ==false){
System.out.println(sequencerRunning);
System.out.println("No dangers - wasnt running");
}else{
System.out.println(sequencerRunning);
sequencer.stop();
sequencer.close();
System.out.println("No dangers - was running - now closed");
}
}catch(MidiUnavailableException mue){
System.out.println("Midi device unavailable!");
}
}
Im completely baffled, See what you think...
Ant...

