IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Multimédia Java Discussion :

Exception Son


Sujet :

Multimédia Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut Exception Son
    Bonjour, je veux jouer un son dans une JFrame et j'ai trouvé ce code. Seulement il me dit qu'il ne sait pas ouvrir l'input stream

    Pouvez-vous me dire pourquoi? Mon son est en *.wav

    Voici le code :
    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
    class Son{
    	private String url;
    	private Clip clip;
    	public Son(String s){
    		url = s;
    		try{
    			File fichier = new File(url);
    			AudioInputStream stream = AudioSystem.getAudioInputStream(fichier);
    			AudioFormat format = stream.getFormat();
    			DataLine.Info info = new DataLine.Info(
    			Clip.class, stream.getFormat(), ((int)stream.getFrameLength()*format.getFrameSize()));
    			clip = (Clip) AudioSystem.getLine(info);
    			clip.open(stream);
    		}catch(UnsupportedAudioFileException uafe){uafe.printStackTrace();
    		}catch(IOException ioe){ioe.printStackTrace();
    		}catch (Exception e) {e.printStackTrace();}
      	}
       	public void jouer(){
       		try{
    			clip.start();
    		}catch (Exception e){
    			e.printStackTrace();
    		}
    	}
    }

  2. #2
    Membre chevronné Avatar de Scorpyosis
    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2004
    Messages : 365
    Par défaut
    Peux tu nous donner le message d'erreur complet , stp ?

  3. #3
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    Bien sur :

    java.io.FileNotFoundException: on.wav (Le fichier spÚcifiÚ est introuvable)

  4. #4
    Membre chevronné Avatar de Scorpyosis
    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2004
    Messages : 365
    Par défaut
    Il ne trouve tout simplement pas ton fichier son, c'est pour ça qu'il ne peut pas le lire !!! vérifies le nom du fichier et son emplacement et ton problème sera reglé, tout simplement.

  5. #5
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    Je fait File fichier = new File("son.wav");

    Ce n'est pas bon?

  6. #6
    Membre Expert
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 414
    Par défaut
    Citation Envoyé par Belegkarnil
    Je fait File fichier = new File("son.wav");

    Ce n'est pas bon?
    Non, ce n'est pas bon. Comment veux-tu que ton programme puisse localiser ton fichier?

    Pour des tests, on prend toujours un chemin absolu. Cette solution évite une source d'erreur. En plus, il est de bonne pratique d'afficher le chemin absolu du fichier que l'on ouvre....

  7. #7
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    Ok, j'ai mit le chemin absolu,
    quand je met System.out.println(dir); j'obtient :
    C:\Documents and Settings\Moi\Bureau\CLEF\messanger\Client\son\on.wav
    Et c'est bien la que son trouve mon son. Donc je ne suis pas sur que c'est du au chemin du fichier. Est-ce possible que le son soit mal encodé en *.wav ???

  8. #8
    Membre Expert
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 414
    Par défaut
    Le message est assez explicite:

    java.io.FileNotFoundException: on.wav (Le fichier spécifié est introuvable)

  9. #9
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    Oui d'accord mais j'ai une autre erreur et mon fichier est en *.wav :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    javax.sound.sampled.UnsupportedAudioFileException: could not get audio input str
    eam from input file
            at javax.sound.sampled.AudioSystem.getAudioInputStream(AudioSystem.java:
    1170)

  10. #10
    Membre chevronné Avatar de Scorpyosis
    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2004
    Messages : 365
    Par défaut
    Tu peux faire un test tout simple, c'est mettre le fichire son à :
    C:\son.wav

    de plus je remarque que tu fais new File("son.wav") et que plusieurs fois tu indiquesque ton fichier est on.wav, comme je te le disais dans auparavant vérifie que tu utilises le bon nom de fichier.

    Et si tu veux encore simplifier la chose, mets le fichier son là ou tu lance l'application, par exemple si tu travaille sous eclipse c'est dans le repertoire de ton projet

  11. #11
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    Oui j'ai écris new File("son.wav") pour montrer comment je fais. Mais mon fichier est bien on.wav. J'ai essayé avec new File("C:\\son.wav") et le fichier était bien nommé comme son.wav

    J'ai toujours l'erreur suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    javax.sound.sampled.UnsupportedAudioFileException: could not get audio input str
    eam from input file
            at javax.sound.sampled.AudioSystem.getAudioInputStream(AudioSystem.java:
    1170)

  12. #12
    Membre chevronné Avatar de Scorpyosis
    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2004
    Messages : 365
    Par défaut
    Je sais que pour toi ca doit être déprimant mais là tu as avancé ! si si !
    Parce que maintenant il trouve ton fichier mais il te dit que ce n'est pas un fichier son valide. en fait ton fichier son est valide enfin surement, mais Java ne lit que des fichiers son de types *.au, et c'est pour ça qu'il te jette cette exception. Pour lire les wav et d'autre format utilises JMF.

  13. #13
    Membre éclairé Avatar de Belegkarnil
    Inscrit en
    Juin 2005
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2005
    Messages : 289
    Par défaut
    OK merci beaucoup Scorpyosis ;-)

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 43
    Par défaut
    Après une recherche sur ce sujet, j'ai trouvé que le format .au était en fait identique au .wav : pas de problème pour lire les wav. Par contre, Java n'arrive pas à lire certains encodage de wav, ça dépend de la fréquence.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Un catch qui n'attrape pas son exception
    Par threshold dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 06/01/2013, 09h50
  2. Requête insert et son exception
    Par lordMehdi dans le forum JDBC
    Réponses: 4
    Dernier message: 04/04/2012, 15h48
  3. ecrire son OS (assembleur ??)
    Par Anonymous dans le forum Programmation d'OS
    Réponses: 9
    Dernier message: 25/11/2002, 19h25
  4. Réponses: 5
    Dernier message: 12/06/2002, 15h12
  5. c: gestion des exceptions
    Par vince_lille dans le forum C
    Réponses: 7
    Dernier message: 05/06/2002, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo