Je vous propose un petit exemple pouvant servir également de tutoriel concernant la prise de photo depuis la webcam dans une appli sous Flex 2. L’exemple permet de stocker les photos prises, et de les télécharger au format JPEG grâce à un petit script PHP.
Les animations Flash permettent d’accéder à la webcam de l’utilisateur si celui-ci le permet. Il est donc assez facile de capturer une image issue de la webcam. Cependant, cette image est au format Bitmap, et elle n’est pas enregistrable par l’utilisateur du fait que Flash n’est pas accès au système de fichiers de l’utilisateur.
Je vous propose donc dans cet exemple de voir comment capturer une image de la webcam, l’encoder au format JPEG et enfin la rendre téléchargeable par l’utilisateur, tout ceci avec Flex 2 et un petit script PHP pour le téléchargement.
Si vous utilisez Flex 3, et/ou que vous comptez réaliser une application AIR, je vous conseille le très bon tutoriel (en anglais) dont je me suis inspiré sur tinkerlog.com (Flex 3 propose un encodeur JPEG intégré, et les applications AIR peuvent enregistrer des fichiers directement ce qui n’est pas le cas des anims Flash)
L’exemple est disponible ici et les sources ici.
Le code est documenté pour comprendre chaque étape. N’hésitez pas à me faire part de vos commentaires…
Merci de votre fidélité à Flex-Info.fr. N'oubliez pas que vous pouvez vous abonner au flux RSS ;)












mars 25th, 2008 Ã 2 h 18 min
c’est trés bonne!
octobre 18th, 2008 Ã 0 h 08 min
salut mickael, ça marche très bien, mais je me demandais si tu pourrais m’aider à faire quelque chose d’assez similaire.. je n’y connais vraiment rien en flex, j’ai un peu decrypté ton code, et je crois comprendre les grandes lignes.. bref voici ce que je cherche à faire : appeler une pop up en javascript avec l’équivalent de ton image de gauche (la vidéo) avec le bouton “take snapshot” en dessous, qui se refermerait une fois la photo prise, la photo étant uploadée sur le serveur et le lien enregistré en base de donnée avec upload.php
pour le moment j’arrive à enregistrer la photo et inscrire son adresse en base, cependant je n’arrive pas à faire sans le “selectedSnapshot.source”
en gros j’aimerais pouvoir appeller la fonction uploadSnapshot() et qu’elle travaille directement sur snapshotbitmap (pour le test “if” et le jpgEncoder..)
ton aide serait vraiment très précieuse,
je suis parachuté sur un projet d’installation multimédia et je n’ai malheureusement pas le temps d’apprendre le flex dans le temps imparti.. :s
kevin
avril 6th, 2009 Ã 13 h 39 min
gracias por ejemplo, me salvaste, quiero saber por si acaso no tenes algun mas ejemplos para compartir, enviame por favor a mi correo si tenes…gracias de nuevo, soy un novato y gusta flex…
avril 6th, 2009 Ã 14 h 35 min
np puedo bajar el ejemplo, enviame por favor a mi mail, quiero saber por si acaso no tenes algun mas ejemplos para compartir, enviame por favor a mi correo si tenes…gracias de nuevo, soy un novato y gusta flex…