Son dans programme java

Son dans programme java - Java - Programmation

Marsh Posté le 20-01-2011 à 23:39:17    

Bonjour, un nouveau problème mais c'est les profs qui ont loupés un truc cette fois.
En gros quand on appelle cette ligne de commande dans notre programme : SoundEffect.PASTILLE.play();  
cela fait un son. Mais le problème c'est qu'il ne le fait qu'une fois... si le programme repasse sur cette ligne, le son n'est plus joué. (sous Linux, pas de problème sous Windows normalement)
voila le code de la classe qui gère le son.
 

Code :
  1. import java.io.*;
  2. import javax.sound.sampled.*;
  3. import java.net.URL;
  4. public enum SoundEffect
  5. {
  6. PASTILLE ( "./sons/pastille.wav" ),
  7. PERDU    ( "./sons/perdu.wav"    );
  8. public static enum Volume{ MUTE, LOW, MEDIUM, HIGH }
  9. public static Volume volume = Volume.LOW;
  10. private Clip clip;
  11. SoundEffect( String source)
  12. {
  13.  try
  14.  {
  15.   URL url = this.getClass().getClassLoader().getResource(source);
  16.   AudioInputStream stream = AudioSystem.getAudioInputStream(url);
  17.   AudioFormat format = stream.getFormat ();
  18.   DataLine.Info info = new DataLine.Info (Clip.class, format );
  19.   clip = (Clip) AudioSystem.getLine (info);
  20.   //clip = AudioSystem.getClip();
  21.   clip.open (stream);
  22.  }
  23.  catch(Exception e)
  24.  {}
  25. }
  26. public void play()
  27. {
  28.   if ( clip.isRunning() )
  29.    clip.stop();
  30.   clip.setFramePosition(0);
  31.   clip.start();
  32. }
  33. static void init()
  34. {
  35.  values();
  36. }
  37. }


 
Merci.


Message édité par valoutux le 20-01-2011 à 23:40:24
Reply

Marsh Posté le 20-01-2011 à 23:39:17   

Reply

Marsh Posté le 21-01-2011 à 08:39:56    

Encore toi !, t'es vraiment nul :D
 
Problème résolu en moins de 30 secondes encore une fois :)
 
http://www.javafr.com/code.aspx?ID=29515

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed