Son sur Java

Signaler
Messages postés
15
Date d'inscription
mercredi 6 janvier 2021
Statut
Membre
Dernière intervention
23 mars 2021
-
Messages postés
16355
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
2 juin 2021
-
Bonjour,.....j'aimerai bien lire une son sur mon code java mais ca me donne une erreur
package music;
import java.io.File;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.swing.JOptionPane; 

public class musicStuff
{
 public void playMusic(String musicLocatoin)
 {
  try{

   File musicPath= new File(musicLocatoin);
   if(musicPath.exists())
   {
    AudioInputStream audioInput=AudioSystem.getAudioInputStream(musicPath);
    Clip clip= AudioSystem.getClip();
    clip.open(audioInput);
    clip.start();

    JOptionPane.showMessageDialog(null,"Press ok to stop de audio");

   }
   else
   {
    System.out.println("Can't find file");
   }
  }
  catch(Exception e)
  {
   e.printStackTrace();
  }
 }
}


et voila ma class main
package aff;
import music.*;
public class LireMusic
{
 public static void main( String[] args)
 {
  String filepath="BrunoMars.RMF";
  musicStuff musicObject = new musicStuff();
  musicObject.playMusic(filepath);

 }
}


et voilàl' erreur:
javax.sound.sampled.UnsupportedAudioFileException: File of unsupported format
at java.desktop/javax.sound.sampled.AudioSystem.getAudioInputStream(AudioSystem.java:1066)
at music.musicStuff.playMusic(musicStuff.java:17)
at aff.LireMusic.main(LireMusic.java:9)

Merci de votre aide

2 réponses

Messages postés
16004
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
3 juin 2021
549
Bonjour

Je ne code pas en java, mais ton message d’erreur est clair, le fichier que tu essayes de lire n’est pas compatible avec le media player que tu veux utiliser.
De fait, un fichier .RMF, je n’avais jamais vu avant.

Je te conseille de le convertir en mp3 et de réessayer.
Messages postés
16355
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
2 juin 2021
121
Bonjour,

Java est un langage de programmation et définit les classes et méthodes (une API) que l'on peut utiliser pour écrire un programme Java.
Toutefois il existe une multitude d'implémentations différentes de cette API, il y a notamment celles d'Oracle, d'IBM, ou encore celles de la communauté OpenJdk, démultipliées par les différents OS cibles et chacune dans différentes versions.

Et il se trouve que les différents formats audios supportés, c'est au bon vouloir de chaque implémentation...

Il existe un article dans la documentation officielle dédiée aux problèmes de lecture du son :
https://docs.oracle.com/en/java/javase/15/troubleshoot/java-sound.html

Le tutoriel officiel est également une source d'information assez conséquente.
https://docs.oracle.com/javase/tutorial/sound/TOC.html

Je n'ai pas de PC sous la main pour tester mais il doit y avoir moyen de lister les différents formats de fichiers supportés par ton implémentation de Java, ce qui devrait te permettre de savoir ensuite vers quel format de fichier convertir ton fichier son.