Mega Code Archive

 
Categories / Java / Development Class
 

An example of loading and playing a sound using a Clip

/* DEVELOPING GAME IN JAVA  Caracteristiques Editeur : NEW RIDERS  Auteur : BRACKEEN  Parution : 09 2003  Pages : 972  Isbn : 1-59273-005-1  Reliure : Paperback  Disponibilite : Disponible a la librairie  */          import java.io.File; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; import javax.sound.sampled.DataLine; import javax.sound.sampled.LineEvent; import javax.sound.sampled.LineListener; /**  * An example of loading and playing a sound using a Clip. This complete class  * isn't in the book ;)  */ public class ClipTest {   public static void main(String[] args) throws Exception {     // specify the sound to play     // (assuming the sound can be played by the audio system)     File soundFile = new File("../sounds/voice.wav");     AudioInputStream sound = AudioSystem.getAudioInputStream(soundFile);     // load the sound into memory (a Clip)     DataLine.Info info = new DataLine.Info(Clip.class, sound.getFormat());     Clip clip = (Clip) AudioSystem.getLine(info);     clip.open(sound);     // due to bug in Java Sound, explicitly exit the VM when     // the sound has stopped.     clip.addLineListener(new LineListener() {       public void update(LineEvent event) {         if (event.getType() == LineEvent.Type.STOP) {           event.getLine().close();           System.exit(0);         }       }     });     // play the sound clip     clip.start();   } }