j'ai reussit a lire des .wav avec mon programme mais des que les fichier sont un peu gros(plus de 10 sec) il y a un probleme de buffer. Il faudrait donc que je "bifferise" (enfin c'est ce que je pense)mais je sais pas faire.
Voila ma classe, merci d'avance.
Code :
- import java.io.File;
- import java.io.IOException;
- 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;
- import javax.sound.sampled.LineUnavailableException;
- public class Sons
- {
- private Clip m_clip;
- public Sons(File clipFile)
- {
- AudioInputStream audioInputStream = null;
- try
- {
- audioInputStream = AudioSystem.getAudioInputStream(clipFile);
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
- if (audioInputStream != null)
- {
- AudioFormat format = audioInputStream.getFormat();
- DataLine.Info info = new DataLine.Info(Clip.class, format);
- try
- {
- m_clip = (Clip)AudioSystem.getLine(info);
- m_clip.open(audioInputStream);
- }
- catch (LineUnavailableException e)
- {
- e.printStackTrace();
- }
- catch (IOException e)
- {
- e.printStackTrace();
- }
- }
- else
- {
- System.out.println("ClipPlayer.<init>(): can't get data from file " + clipFile.getName());
- }
- }
- public void play()
- {
- m_clip.setFramePosition(0);
- m_clip.loop(0);
- }
- public void stop()
- {
- m_clip.stop();
- }
- }
|
Message édité par davidbator le 10-04-2003 à 06:58:33