Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/02/2013, à 16:49

compte supprimé

Comment jouer un son/musique en Java?

Bonjour,

Je développe actuellement un jeu en Java. (Oui, j'accepte qu'on me rigole au nez.. et c'est vrai que c'est lent, mais bon.. le multi-threading aide beaucoup)
Et comme vous l'auriez deviné, je veux jouer des sons.. en Java.

Alors voici un copie-collé d'une classe que j'ai récupéré sur internet et modifié:

package jbx;

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import sun.audio.AudioPlayer;
import sun.audio.AudioStream;
import controleur.Parametres; 

public class Son {
   /** url : adresse du fichier wav */
   private String url;
   /** son : le son correspondant, nécéssairement final car
   * Audio player est un Thread*/
   private final AudioStream son;
   /**
   * Constructeur
   * @param url : adresse du fichier Wav
   * @throws IOException
   * @throws FileNotFoundException
   */
   public Son(String url) throws FileNotFoundException, IOException{
      this.setUrl(url);
      this.son=new AudioStream(new FileInputStream(this.getUrl()));
   }
   public void play(){
      AudioPlayer.player.start(this.son);
   }
   public void pause(){
      AudioPlayer.player.stop(this.son);
   }
   public String getUrl() {
      return url;
   }
   public void setUrl(String url) {
      this.url = url;
   }
   public AudioStream getSon() {
      return son;
   } 
   
}

Et après pour executer ce son dans mon code, je:

try{
		                   String url="jump.mod";
		                   Son son = new Son(url);
		                   
		                   son.play();
		             	}
                     catch (FileNotFoundException e) {
                       e.printStackTrace();
                     }
                     catch (IOException e) {
                      e.printStackTrace();
                     } 

Sauf que.. ça marche pas à la compilation! (ZUT!!)

./jbxsrc/jbx/Son.java:12: warning: sun.audio.AudioPlayer is internal proprietary API and may be removed in a future release
import sun.audio.AudioPlayer;
                ^
./jbxsrc/jbx/Son.java:13: warning: sun.audio.AudioStream is internal proprietary API and may be removed in a future release
import sun.audio.AudioStream;
                ^
./jbxsrc/jbx/Son.java:14: package controleur does not exist
import controleur.Parametres; 
                 ^
./jbxsrc/jbx/Son.java:21: warning: sun.audio.AudioStream is internal proprietary API and may be removed in a future release
   private final AudioStream son;
                 ^
./jbxsrc/jbx/Son.java:44: warning: sun.audio.AudioStream is internal proprietary API and may be removed in a future release
   public AudioStream getSon() {
          ^
./jbxsrc/jbx/Son.java:30: warning: sun.audio.AudioStream is internal proprietary API and may be removed in a future release
      this.son=new AudioStream(new FileInputStream(this.getUrl()));
                   ^
./jbxsrc/jbx/Son.java:33: warning: sun.audio.AudioPlayer is internal proprietary API and may be removed in a future release
      AudioPlayer.player.start(this.son);
      ^
./jbxsrc/jbx/Son.java:36: warning: sun.audio.AudioPlayer is internal proprietary API and may be removed in a future release
      AudioPlayer.player.stop(this.son);
      ^
1 error
7 warnings
mv: impossible d'évaluer «./jbxsrc/jbx/*.class»: Aucun fichier ou dossier de ce type

Je suis fatigué, pouvez-vous m'aider à jouer un simple son ou une musique en java, s'il vous plait.

#2 Le 04/02/2013, à 17:15

Maisondouf

Re : Comment jouer un son/musique en Java?

A quoi ça sert ça:

import controleur.Parametres; 

C'est une autre classe à toi ?


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#3 Le 04/02/2013, à 18:06

compte supprimé

Re : Comment jouer un son/musique en Java?

Exact, j'ai pas vérifié les import.

J'en ai aucune idée mais je ne pense pas qu'il serve, si?

Je ne suis pas du genre à copier-coller mes scripts, je fais tout moi-même..


Mais là, pour le coup, ca commence à m'agacer un peu.
En C avec la SDL, le tour est joué assez simplement pour jouer un simple son.
En java.. tu galères à chercher un outil te permettant d'en jouer un.

Je veux juste charger et jouer des musiques et des sons. :'( Est-ce trop demander? Java nous envoie à chaque fois la grosse artillerie! :'(


Donc pour fonctionner je dois télécharger tout c'qui manque, ie:
import sun.audio.*
(je suis trop blasé de java)
O`u sont-ils et comment je les installe? Telle est la question..
(Alalah pourquoi m'est-il venu l'idée de développer un jeu en Java? Parce que java est portable, oui oui! Sauf qu'awt n'est pas supportée par les plateformes androids d'après mes amis.. j'ai pas vérifié.. )

Dernière modification par ChrisLeturc (Le 04/02/2013, à 18:11)