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 :

[Audio] [JMF] Lire une de fichier audio (et surtout du mp3)


Sujet :

Multimédia Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut [Audio] [JMF] Lire une de fichier audio (et surtout du mp3)
    Bonjour,
    J'ai fait un petit lecteur mp3 qui, pour le moment, lit qu'un seul fichier.Mais j'aimerais bien qu'il puisse lire une liste complete.

    Je sais deja qu'il faut mettre le chemin de chaque fichier dans un vecteur et ensuite il faut créer une boucle FOR qui parcour le vecteur sauf qu'apres je bloc un peu. Mais pour le moment je parcour toute la liste d'un coup. Se qu'Il faudrai pouvoir marquer une sorte de pause dans la boucle ou trouver quand la lecture du fichier ce termine et là je vois pas trop comment faire.
    Pouvez-vous m'aidez?

    Voici la partie du code que j'avai commencer:
    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
    public void Lire(){
    		try {
    			int tailleList = listeChem.size();				//on recupère la taille de la liste
     
    			for(int i=0; i<+tailleList; i++){
    				audio = new Audio(listeChem.elementAt(i));	//on insert la le chemin du fichier qui se trouve dans le vecteur listeChem
    				do{
    					//String leFichier = listeChem.elementAt(i);
    					audio.lecture();							//puis on commence la lecture
    				}while(audio.getFini()!=true);
    			}
     
    		} catch (Exception e) {
    			erreur("Erreur lors de la lecture :"+e.getMessage());
    		}
    	}
    audio etant la class qui contient la player.
    getFini() devrait retourner un boolean mais il ne fonctionne pas.

    J'ai ce message d'erreur a chaque fois :
    #
    # An unexpected error has been detected by Java Runtime Environment:
    #
    # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x03bacdc1, pid=4496, tid=6112
    #
    # Java VM: Java HotSpot(TM) Client VM (1.6.0-beta2-b79 mixed mode, sharing)
    # Problematic frame:
    # C [mp3Source.ax+0x1cdc1]
    #
    # An error report file with more information is saved as hs_err_pid4496.log
    [thread 5540 also had an error]
    #
    # If you would like to submit a bug report, please visit:
    # http://java.sun.com/webapps/bugreport/crash.jsp
    #
    Merci d'avance

  2. #2
    Membre régulier Avatar de scorbo
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 176
    Points : 83
    Points
    83
    Par défaut
    Il manquerait quelques lignes de la classe audio pour mieux comprendre ce que tu fais, mais à première vu je dirais qu'il y a deux erreurs :
    - Il y a une attente active du à ta boucle while
    - Tu lances la lecture et tu dis que tant qu'elle n'est pas fini, tu lances une nouvelle lecture.

    La correction du 2ème point serait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    audio = new Audio(listeChem.elementAt(i));
    audio.lecture();
    do{
        Thread.sleep(1000);
    }while(audio.getFini()!=true);
    Mais là encore il y a une attente active qu'il te faut supprimer !

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    arf !! J'y suis presque
    j'ais réussi a faire la fonction "suivant" :
    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
    private void getSuivant(){
    		try {
    			audio.arret();
    			numPiste = numPiste+1;
    			int tailleList = listeChem.size();
    			if(numPiste == tailleList){
    				numPiste = 0;
    			}
    			audio = new Audio(listeChem.elementAt(numPiste));
    			audio.lecture();
     
    		} catch (Exception e) {
    			erreur("Erreur lors de la lecture :"+e.getMessage());
    		}
    	}
    Donc si j'en prend exemple, j'y arriverai peut-etre. Mais là il faudrai faire une pause ce qui revient à faire comme tu dis .

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2008
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Salut!
    Si tu veux savoir lorsque la lecture d'un fichier est terminée (en utilisant JMF et la classe Player) il te suffit d'ajouter un listener sur l'instance de ton player, comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    player.addControllerListener(new ControllerListener() {
        public void controllerUpdate(ControllerEvent controllerEvent) {
            // fin des initialisations
            if (controllerEvent instanceof RealizeCompleteEvent) {
            }
            // fin de la lecture
            else if (controllerEvent instanceof EndOfMediaEvent) {
                >> TON CODE !!			
            }
        }
    });
    libre a toi de mettre une pause ou nimporte quoi d'autre

Discussions similaires

  1. [CS5] Lire un fichier son à partir d'une portion de fichier audio
    Par Jean-Pascal dans le forum ActionScript 3
    Réponses: 0
    Dernier message: 11/05/2012, 17h01
  2. Réponses: 1
    Dernier message: 02/06/2010, 16h51
  3. Envoyer un fichier audio en réponse à une requète
    Par pathfinder06 dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 09/11/2007, 09h28
  4. fonction pour lire les fichier audio
    Par tarek007 dans le forum Multimédia
    Réponses: 1
    Dernier message: 11/05/2005, 16h28

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