org.deken.game.sound.audio
Class MidiAudio

java.lang.Object
  extended by org.deken.game.sound.audio.MidiAudio
All Implemented Interfaces:
java.util.EventListener, javax.sound.midi.MetaEventListener, Audio, Updateable

public class MidiAudio
extends java.lang.Object
implements Audio, javax.sound.midi.MetaEventListener

Title: MidiAudio

Description: Wrapper class for Midi Sequences. Audio for playing Midi files. The update method is used for ClipAudioFilter classes, since the update(LineEvent) only occurs when the audio stops. The ClipAudio will need to be added to the GameMap's updateable List in order to work.

Copyright: Copyright (c) Nov 19, 2011

Version:
1.0
Author:
Gary Deken

Constructor Summary
MidiAudio(javax.sound.midi.Sequence sequence, javax.sound.midi.Sequencer sequencer, javax.sound.midi.Synthesizer synthesizer)
           
MidiAudio(javax.sound.midi.Sequence sequence, javax.sound.midi.Sequencer sequencer, javax.sound.midi.Synthesizer synthesizer, MidiAudioFilter filter)
           
 
Method Summary
 void close()
           
 MidiAudio copy()
           
 double getLength()
           
 java.lang.String getName()
           
 void meta(javax.sound.midi.MetaMessage meta)
           
 void pause()
           
 void play()
           
 void resume()
           
 void setAudioListener(AudioListener listener)
           
 void setLength(double length)
           
 void setName(java.lang.String name)
           
 void stop()
           
 void update(long elapseTime)
          The update method is used for filter updates, when sound does have regular updates.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MidiAudio

public MidiAudio(javax.sound.midi.Sequence sequence,
                 javax.sound.midi.Sequencer sequencer,
                 javax.sound.midi.Synthesizer synthesizer)

MidiAudio

public MidiAudio(javax.sound.midi.Sequence sequence,
                 javax.sound.midi.Sequencer sequencer,
                 javax.sound.midi.Synthesizer synthesizer,
                 MidiAudioFilter filter)
Method Detail

close

public void close()
Specified by:
close in interface Audio

copy

public MidiAudio copy()
Specified by:
copy in interface Audio

getLength

public double getLength()
Specified by:
getLength in interface Audio

getName

public java.lang.String getName()
Specified by:
getName in interface Updateable
Returns:

meta

public void meta(javax.sound.midi.MetaMessage meta)
Specified by:
meta in interface javax.sound.midi.MetaEventListener

pause

public void pause()
Specified by:
pause in interface Audio

play

public void play()
Specified by:
play in interface Audio

resume

public void resume()
Specified by:
resume in interface Audio

setAudioListener

public void setAudioListener(AudioListener listener)
Specified by:
setAudioListener in interface Audio

setLength

public void setLength(double length)
Specified by:
setLength in interface Audio

setName

public void setName(java.lang.String name)

stop

public void stop()
Specified by:
stop in interface Audio

update

public void update(long elapseTime)
Description copied from interface: Audio
The update method is used for filter updates, when sound does have regular updates. Such as Clip audio.

Specified by:
update in interface Audio
Specified by:
update in interface Updateable
Parameters:
elapseTime - long