Webcams reconnues en desktop app mais pas en applet !
skip78
Messages postés12Date d'inscriptionlundi 15 juin 2009StatutMembreDernière intervention19 juin 2009
-
15 juin 2009 à 18:31
slimjava3
Messages postés2Date d'inscriptionsamedi 4 juillet 2009StatutMembreDernière intervention30 novembre 2011
-
1 sept. 2009 à 01:55
Salut à tous,
Je suis confronté à un problème depuis plusieurs jours maintenant, qui reste sans réponses suite à mes recherches et mes posts sur différents forums, d'où mon inquiétude quand à la possibilité de résoudre le dit problème.
Je me suis inscris sur javafr pour télécharger les sources de WebcamLib, mais tant qu'à faire je vais poster mon problème ici :
Vous l'aurez compris, je cherche à réaliser une applet gérant les webcams.
J'ai tout d'abord crée une application J2SE en utilisant le JMF (Java Media Framework), qui fonctionne à merveille, détectant toutes les webcams que j'ai eu l'occasion de tester, et affichant le flux comme souhaité.
Malheureusement, le passage de Desktop application à Applet se fait dans la douleur.
J'ai réussi à tout porter en Applet, cela fonctionne à la perfection dans l'appletviewer, mais dès que je l'héberge et le teste via un browser (tésté Firefox, IE et Opéra), c'est l'échec.
Etonnament, il ne plante pas, mais ne detecte pas les webcams (Au début du programme, j'utilises une méthode de l'API JMF pour détécter les webcams installées sur le P.C. et si aucun device n'est repéré, une pop up d'erreur est affichée)
Cependant, lorsque je ne link pas les .jar à mon projet desktop, j'ai le même comportement.
J'en conclus que cela vient surement du fait que j'ai manqué une étape quant à l'intégration de l'API à l'applet.
Je rajouterais que j'ai signé mon applet, au cas ou c'était une question de sécurité, mais rien n'y fait, aucune caméra n'est détéctée.
C'est déséspérant quand comme ici ça fonctionne à merveille sur appletviewer mais échoue sur les webbrowser :(
Merci par avance de votre aide,
Alex
A voir également:
Webcams reconnues en desktop app mais pas en applet !
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 15 juin 2009 à 21:32
Salut,
Regarde dans la console java de ton browser pour voir si il n'y a pas d'exception qui serait levée par ton code... s'il s'agit d'une ClassNotFoundException, c'est qu'il ne trouve pas la librairie.
skip78
Messages postés12Date d'inscriptionlundi 15 juin 2009StatutMembreDernière intervention19 juin 2009 16 juin 2009 à 10:36
Salut,
Malheureusement aucune exception n'est levée !
D'un autre côté, comme je l'ai dit dans mon message d'origine, la fonction de détection des webcams semble ne PAS lever d'exception si les librairies ne sont pas linkées, MAIS empêche l'application de détecter les webcams.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 16 juin 2009 à 10:41
Tu n'as pas moyen avec JMF de récupèrer le nombre de webcams détectées à ce moment là ? Histoire d'afficher un messagebox pour voir si tu en trouve ou non pour t'assurer si les librairies sont bien linkées ou non...
As tu essayé de faire un seul jar contenant les librairies et tes classes ? (style avec fatjar)
skip78
Messages postés12Date d'inscriptionlundi 15 juin 2009StatutMembreDernière intervention19 juin 2009 16 juin 2009 à 11:51
Alors,
Merci tout d'abord de prendre de ton temps pour suivre mon problème :)
Par ailleurs, j'ai lancé un test de détection du JMF dans mon applet, et ça fonctionne :
JMF Version... 2.1.1e
Win32 Build
Native Libraries Found
Plutôt inquiétant !
Pour ce qui est de lister les devices installés, c'est ce qu'est supposé faire la fonction qui me renvoie le message "no webcams detected" (que J'ai crée - ce n'est pas une exception)
Pour ce qui est de mettre tous les jar ensemble, je cherchais justement à faire cela hier soir, je ne connaissais pas fatjar, je vais me pencher la dessus !
Merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
skip78
Messages postés12Date d'inscriptionlundi 15 juin 2009StatutMembreDernière intervention19 juin 2009 16 juin 2009 à 11:58
Tiens par ailleurs j'avais pensé tester l'utilisation d'un fichier jnlp pour démarrer en java web start.
Je n'y connais absolument rien.
Penses tu que ça puisse changer quelque chose ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 16 juin 2009 à 12:15
Disons qu'avec java web start tu auras peut-être moins de limite au niveau sécurité... Je vois pas vraiment ce qui pourrait bloquer (surtout si les librairies natives sont bien installées !).
skip78
Messages postés12Date d'inscriptionlundi 15 juin 2009StatutMembreDernière intervention19 juin 2009 16 juin 2009 à 12:31
On vient de m'imposer l'utilisation d'un applet et par conséquent de me refuser celle de JWS.
Quant à la création d'un unique Jar, aurais tu un autre soft que FatJar, étant donné que je travailles sous NetBeans ?
skip78
Messages postés12Date d'inscriptionlundi 15 juin 2009StatutMembreDernière intervention19 juin 2009 16 juin 2009 à 15:23
Bon ....
J'ai tout mis en un seul JAR, je maitrise maintenant la création de jar, la modification de manifest etc.
mais RIEN n'y fait, toujours le même problème !
C'est vraiment énervant
Une quelconque idée ?
pffff ...
Et je suis censé avoir fini aujourd'hui'hui
skip78
Messages postés12Date d'inscriptionlundi 15 juin 2009StatutMembreDernière intervention19 juin 2009 17 juin 2009 à 15:31
A nouveau, petite update, le problème sur Vista à été résolu par un mec sur le forum de Sun, en fait il semblerait que ça soit le classpath qui dirige vers un dossier qui n'existe pas.
=> il suffit de le créer.
=> dans C:\Java\JRE1.6 créer un dossier "classes" et y mettre le fichier "jmf.properties" présent dans C:\JMF\lib
Aprés ça ca marche nickel :)
Le gros problème restant donc qu'il faut faire de lourdes manipulations avant de pouvoir jouir pleinement des utilités de la JMF.
J'ai tenté de me pencher un peu vers le script, mais c'est contre toute étique d'installer la JMF, de faire le JMF registry et de créer et déplacer des fichiers à l'insu de l'utilisateur. Et de toute façon ça prend un temps monstre.
=> Aucune autre solution que d'indiquer à l'utilisateur ce qu'il doit faire ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 17 juin 2009 à 16:00
C'est l'inconvénient de java dès qu'on utilise des bibliothèques natives malheureusement : java est fait pour être exécuté sur n'importe quel machine qui a une jvm d'installée, ce qui limite énormément les possibilités d'interraction avec le matériel (webcams par exemple).
skip78
Messages postés12Date d'inscriptionlundi 15 juin 2009StatutMembreDernière intervention19 juin 2009 17 juin 2009 à 16:46
(sorry pour le double post)
Parce que, j'ai oublié de préciser, mais dans l'esprit de mon programme, ça peut très bien être du one time use.
=> Si l'utilisateur doit se taper 10 minutes d'install pour faire fonctionner une application, je suis pas sur qu'il soit séduit ... :/
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 17 juin 2009 à 17:08
Je ne sais pas si il existe de solutions miracles à ton problème, l'idéal ce serait de trouver une bibliothèque qui sache exploiter une webcams sans passer par une librairie native ou alors qui soit bien plus simple à mettre en place que jmf !
slimjava3
Messages postés2Date d'inscriptionsamedi 4 juillet 2009StatutMembreDernière intervention30 novembre 2011 1 sept. 2009 à 01:55
salut skip78.
j'avais le méme probléme que toi .
dans mon cas , Vector tousLesPilotes = CaptureDeviceManager.getDeviceList(null); marche bien siij'exécute mon application sous mon IDE eclipse ,par contre a travers mon jar ,tousLesPilotes est vide.
je essayer de creer le reprtoire classes dans JRE mais le méme porobléme ..
pouvez vous m'aider ?