[JAVA] Problème createPlayer JMF [Résolu]

Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
- - Dernière réponse :  misterjoidf - 19 juil. 2011 à 11:09
Bonjour,

je suis actuellement en stage et je dois réaliser une applet affichant la vidéo d'une caméra IP. Pour cela j'ai vu que la seule bibliothèque JAVA était la JMF. Je m'y suis donc attelé.

J'ai regardé quelques tuto et j'ai programmé un premier jet. Seulement j'ai un soucis lors de la création du player :

package view;

import java.io.IOException;

import javax.media.CaptureDeviceInfo;
import javax.media.IncompatibleSourceException;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.NoDataSourceException;
import javax.media.NoPlayerException;
import javax.media.Player;
import javax.media.format.JPEGFormat;
import javax.media.protocol.DataSource;
import javax.swing.JPanel;
import model.Model;
import com.sun.image.codec.jpeg.*;
import com.sun.media.MediaPlayer;

public class View extends JPanel{
    private Model model_;
    private VideoThread videoThread_;
    private MediaLocator mediaLocator_;
    private Player player_;
    
    
    public View(Model model){
        model_ = model;
        if(model_.getUrl() != null){
            mediaLocator_ = new MediaLocator(model.getUrl());
            if(mediaLocator_ == null)
                System.out.println("Impossible de trouver le media.");
            else{
                try {
                    player_ = Manager.createPlayer(mediaLocator_);
                } catch (NoPlayerException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }
    }
}


Au moment de l'appel à "Manager.createPlayer(...)" j'ai une NoPlayerException de lancée. J'ai beau chercher je ne trouve pas la solution. J'ai tenté avec un DataSource ou même un CaptureDeviceInfo mais rien ne fait...

Merci d'avance.
Afficher la suite 

Votre réponse

20/24 réponses

Meilleure réponse
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
3
Merci
Salut,

Mets la stack trace complète car là on va pas pouvoir faire grand chose.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
3
Merci
Autant pour moi, voilà l'erreur que je reçoit systématiquement :

javax.media.NoPlayerException: Cannot find a Player for :http://192.168.54.130:13900/axis-cgi/mjpg/video.cgi
at javax.media.Manager.createPlayerForContent(Manager.java:1412)
at javax.media.Manager.createPlayer(Manager.java:417)
at view.View.(View.java:34)
at Launcher.init(Launcher.java:30)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_Mousk
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
3
Merci
Là où c'est bizarre c'est que même lorsque j'indique cette url dans JMFStudio, il me dit qu'il ne peut pas créer de player pour cette adresse.

Je commence à désespérer.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_Mousk
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
3
Merci
Ok, c'est très certainement un codec qu'il ne gère pas ! JMF est assez limité en nombre de codecs qu'il arrive à utiliser !

Je te conseille d'utiliser un plugin de JMF pour pouvoir gérer plus de codecs : Fobs4JMF par exemple.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
3
Merci
Merci je vais essayer cela.

Par contre j'ai vu que pour installer Fobs4JMF il faut copier un fichier dans le système.

Est-ce que chaque utilisateur devra faire cela avant de lancer l'applet de chez lui ?

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_Mousk
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
3
Merci
J'ai tenté de configurer JMStudio en ajoutant les codecs,... via JMRegistery comme indiqué sur le site. Cepedant j'avais toujours un "could not add item" lorsque je cliquais sur "add".

J'ai donc remplacer le jmf.properties de ma jmf installée par celui de fobs4jmf. J'ai donc maintenant tous ce qu'il faut dans JmfRegistery mais cela ne change rien du tout au niveau de mon programme (ni de JMStudio qui ne veut toujours pas lire mon url...).

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_Mousk
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
3
Merci
C'est quel format de vidéo que tu veux lire ?

Il existe un autre plugin pour JMF mais je me rappelle plus le nom.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
3
Merci
C'est un format mjpg, c'est un streaming d'une caméra IP Axis 211M.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_Mousk
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
3
Merci
Sinon essaye de lire une simple vidéo MPEG avec ton programme pour voir si ca vient de ton programme ou bien du format de la vidéo.

Je ne connais pas ce format de vidéo, et après une petite recherche sur google, il semblerait que tu ne sois pas le seul à ne pas arriver à lire ce format !

Essaye de voir avec cà :
http://www.commentcamarche.net/forum/affich-2551928-recuperer-video-vam-flux-video-avec-jmf
Bien qu'apparement cà ne s'appliquer par pour des caméras AXIS, mais c'est peut-être une piste...

Après une solution, si ton but est juste de lire une vidéo et non de lire une vidéo spécialement dans ce format, est de la réencoder dans un autre format avec un logiciel (SUPER par exemple).

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
3
Merci
Salut,

C'est la dll de Fobs qu'il ne trouve pas : un 'native livrary' veut dire une librairie système.

Essaye de placer la dll de fobs dans le répertoire system32 de windows.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
3
Merci
Je galère vraiment avec la mise en page sur ce forum, je reécris mon message en espérant que cette fois-ci ce sera bon :


Bon alors effectivement JMStudio n'arrive pas à lire une vidéo MPEG-4.

J'ai vu qu'en copiant les fichier jmf.jar, jmf.propertie, fobs4jmf.jar et fobs4jmf.dll dans un dossier "lib" que l'on ajoute ensuite par eclipse, ca devrait fonctionner.

C'est ce que j'ai fait mais maintenat j'ai d'autres erreurs :

java.io.IOException: File Not Found
java.io.IOException: File Not Found
javax.media.NoPlayerException: Error instantiating class: com.sun.media.protocol.file.DataSource : java.io.IOException: File Not Found
at javax.media.Manager.createPlayerForContent(Manager.java:1362)
at javax.media.Manager.createPlayer(Manager.java:417)
Fobs4JMF - Native shared library found	at javax.media.Manager.createRealizedPlayer(Manager.java:553)
at view.View.(View.java:33)
at Launcher.init(Launcher.java:30)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
java.lang.NullPointerException
at view.View.(View.java:44)
at Launcher.init(Launcher.java:30)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

OpenError: File open error



En gros y'a un fichier qu'il ne trouve pas mais je ne sais pas lequel...

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_Mousk
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
3
Merci
Salut,

Mon .dll était déjà dans System32, il est à la fois dans "lib" et dans "System32".

Le truc que éclipse écrit "Native shared library found" donc il trouve le dll non ?

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_Mousk
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
3
Merci
Tu es sous quel browser ? SOus chrome, si tu utilises la mega-hypra-super freetextbox, les retours à la lignes ne sont pas pris en compte :(

La solution : passer à la textbox classique, c'est moche et limité, mais au moins ca marche !

Vive le progrès !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
0
Merci
Ok merci, j'ai déjà parcouru des dizaines de fois les forums sans trouver de réponse... Je vais essayer la vidéo locale.

Merci quand même.
Commenter la réponse de cs_Mousk
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
0
Merci
Bon alors effectivement JMStudio n'arrive pas à lire une vidéo MPEG-4.

J'ai vu qu'en copiant les fichier jmf.jar, jmf.propertie, fobs4jmf.jar et fobs4jmf.dll dans un dossier "lib" que l'on ajoute ensuite par eclipse, ca devrait fonctionner.

C'est ce que j'ai fait mais maintenat j'ai d'autres erreurs :

java.io.IOException: File Not Found
Fobs4JMF - Native shared library found
OpenError: File open error
java.io.IOException: File Not Found
javax.media.NoPlayerException: Error instantiating class: com.sun.media.protocol.file.DataSource : java.io.IOException: File Not Found
at javax.media.Manager.createPlayerForContent(Manager.java:1362)
at javax.media.Manager.createPlayer(Manager.java:417)
at javax.media.Manager.createRealizedPlayer(Manager.java:553)
at view.View.(View.java:29)
at Launcher.init(Launcher.java:30)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
java.lang.NullPointerException
at view.View.(View.java:40)
at Launcher.init(Launcher.java:30)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)


En gros y'a un fichier qu'il ne trouve pas mais je ne sais pas lequel...
Commenter la réponse de cs_Mousk
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
0
Merci
L'autre plugin dont du parlais, ce ne serai pas FFMPEG par hasard ?

Je vois qu'ils en parlent pas mal sur le site de Fobs4Jmf mais je ne saisi pas trop si c'est une bibliothèque ou un plugin.
Commenter la réponse de cs_Mousk
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
0
Merci
Oui c'est bien cà : FFMPEG ! C'est un plugin pour JMF aussi, mais il me semble que j'ai jamais réussi à le faire fonctionner :(
Commenter la réponse de cs_DARKSIDIOUS
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
0
Merci
En fait c'est un logiciel complet, ce n'est pas un plugin... J'avais un espoir mais non, il faut que je me contente de JMF.

Je ne comprends vraiment pas comment ça se fait que j'ai ces erreurs là...
Commenter la réponse de cs_Mousk
Messages postés
16
Date d'inscription
dimanche 4 février 2007
Dernière intervention
29 mai 2009
0
Merci
Y'a quand même une bonne nouvelle, fobs4jmf permet lui de lire des vidéos en MPEG-4, j'ai testé avec jmfStudio contenu dans l'archive fobs4Jmf et ça fonctionne.

Me reste plus qu'à réussir à l'intégrer dans éclipse... là c'est pas gagné.
Commenter la réponse de cs_Mousk
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
0
Merci
Oui Fobs4JMF permet de lire quasiment tout les formats (quasiment !).

Fais voir ton code qui pose problème, on ne sais jamais, peut-être que j'aurais une piste.
Commenter la réponse de cs_DARKSIDIOUS

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.