Bonjour à tous,
j'ai récupéré sur Internet un code source qui permet en théorie d'ouvrir un fichier audio et de l'arrêter. Seulement je n'arrive même pas à le faire fonctionnerDonc je vous mets le code, dites moi s'il faut des import particuliers (autres que ceux présents xD) , installer des bibliothèques pour l'audio, ou autre chose ^^ ...
mon compilateur m'affiche très bien mon petit "debug0" donc à priori pas d'erreurs de codage ^^
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83 import java.io.File; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; import javax.sound.sampled.DataLine; public class WavPlayer { private Clip clip = null; private AudioInputStream audioStream = null; public WavPlayer(File f) throws Exception{ audioStream = AudioSystem.getAudioInputStream(f);//recuperation d'un stream de type audo sur le fichier AudioFormat audioFormat = audioStream.getFormat();//recuperation du format de son //recuperation du son que l'on va stoquer dans un oblet de type clip DataLine.Info info = new DataLine.Info( Clip.class, audioStream.getFormat(), ((int) audioStream.getFrameLength() * audioFormat.getFrameSize())); //recuperation d'une instance de type Clip clip = (Clip) AudioSystem.getLine(info); } /** * Ouverture du flux audio * @return On retourne <code>false</code> si il y a eu une erreure */ public boolean open(){ if(clip != null && !clip.isOpen())//teste pour ne pas le faire dans le vent try { clip.open(audioStream); } catch (Exception e) { e.printStackTrace();//pour le debugage return false; } return true; } /** * Fermeture du flux audio */ public void close(){ if(clip != null && clip.isOpen())//teste pour ne pas le faire dans le vent clip.close(); } /** * On joue le son */ public void play(){ if(clip != null && clip.isOpen()) clip.start(); } /** * On arrete le son */ public void stop(){ if(clip != null && clip.isOpen()) clip.stop(); } public static void main(String [] args){ try { WavPlayer wp = new WavPlayer(new File("musique1.wav")); wp.open();//ouverture du flux wp.play();//lecture wp.stop();//arret wp.close();//pour etre propre on ferme le flux quand il n'est plus utile :D System.out.println("debug0"); } catch (Exception e) { e.printStackTrace(); } } }
Voili voilou, merci d'avance pour vos réponses![]()
Partager