Bonjour à tous,
Voilà la nouvelle classe est prête ![]()
Gràce à l’aide de Richard Lester et Didier Brun, j’ai pu finaliser mon idée et cette nouvelle version de la classe DistortImage.
En fait la fameuse idée dont je vous avais parlé avant n’a pas été utilisée. Pourquoi? Car il se trouve qu’en fait modifier la matrice du MovieClip revienne au même que de le redessiner avec la matrice adaptée… Moi personellement je ne m’y attendais pas du tout…
Enfin neanmois nous avons reussit à obtenir des performances entre 2.5 et 3 fois supérieures à la version précédente! Pas mal je pense.
Voici une capture d’écran, image obtenue à partir du flux de ma webcam ^^
Et voici un exemple avec une webcam pour que vous puissiez tester par vous même:
Vous pouvez télécharger le tout ( DistortImage.as, le fla, le swf ) ici : sources !
24 March 2006 à 3:36 pm
Excellent
C’est très fluide chez moi
24 March 2006 à 4:14 pm
Franchement bon boulot
Je regarderai cela de plus prêt ce week end…
EKA+
24 March 2006 à 4:17 pm
ça le fait grave, bravo kirou ! J’ai relégué l’info sur mon blog et j’en ai profité pour réaliser une petite démo avec un flv de base :
DistorImage avec vidéo FLV en PHP stream
24 March 2006 à 4:23 pm
Merci les mecs c’est sympas


Foxy, j’adore ton exemple! Ca rend qd meme super bien ce petit truc
Et merci pour l’article très sympathique
24 March 2006 à 10:45 pm
C’est énorme !
Par contre, sure le site de Foxy (ensuite j’ai pas testé ta version) le player Flash 8.5 plante fort abruptement.
24 March 2006 à 10:59 pm
Merci,
Sinon j’ai eu le même blem avec la vidéo de Foxy au bout d’un moment. Ca freeze Firefox. J’ai moi aussi le player 8.5. Foxy si tu nous lit avant que je te vois sur MSN
25 March 2006 à 12:36 am
Exact et ç’est la cas pour moi aussi ! Firefox Player 8.5 aussi. Alors j’ai déjà eu ce genre de problème sous FireFox avec les matrices, ça se produisait quand les paramètres tx & ty n’étaient pas entiers. Mais visiblement j’ai fait des tests et je réussi pas à corriger le problème. Je ne pense pas que le problème vienne du code vidéo du player parcequ’il fonctionne très bien sans DistortImage mais j’aimerais bien en avoir la certitude. Mon exemple est du progressive download PHP, peut-être qu’à un moment le flux n’est pas transmis et que l’opération de dessin merdoie ? Il faut que je pousse les tests plus loin pour voir vraiment d’où ça vient, si c’est de DistortImage, de mon Player, de l’association des deux ? Si d’ici là vous avez des pistes, je suis preneur ! (NB: Le bug ne se produit absoluement pas sur IE) ???
25 March 2006 à 2:10 pm
Bon j’ai localisé le BUG mais impossible de le résoudre. C’est au moment du dessin de la texture :
d.texture.draw(video_mc).
Sachant que video_mc contient juste l’objet Video. Si je vire l’objet Video et que je mets un symbole graphique à la place, ça tourne.
J’ai tenté de faire des traces d’un peu de tout sur video_mc pour déterminer ce qui n’allez pas, mais tout à l’air bon, ses propriétés sont cohérentes au moment du crash.
Donc pourquoi la méthode BitmapData.draw() merdoie quans le clip contient une vidéo ? Grand mystère. J’ai pensé à un problème de crossdomain mais la vidéo est hébergée sur le même domaine !
J’ai trouvé quelques bugs de freeze de firefox sur les tehcnotes MM mais aucune qui incrimine BitmapData.draw(). Je vais essayer d’isoler le problème à son stricte minimum pour l’envoyer à MM.
25 March 2006 à 2:13 pm
Et si tu met à jour le bitmapData à une frequence differente de l’anim, moins ou plus rapidement par exemple.
Il y a aussi les paramètres à la methode draw il me semble, peut etre il serai interessant de jouer dessus. Avec IE je n’ai pas de pbs, donc j’imagine que cela vient plutot du player…
25 March 2006 à 2:15 pm
Et puis si mon exemple avec la webcam fonctionne sans soucis, c’est que cela ne vient pas tellement du draw, mais plutot de ce qui est dessiner ds le bitmapData! Enfin c’est une supposition
25 March 2006 à 5:25 pm
Oui j’ai essayé en mettant une matrice bidon un rectangle un blendmode et tout y’a rien à faire.
Le truc c’est que mon objet vidéo contient uniquement un flux NetStream qui provient d’un FLV chargé, y’a aucune raison que ce soit différent de la WebCam (si ce n’est la taille, ma vidéo est un peu plus large et haute).
L’autre différence par rapport à la webcam c’est la source du stream, c’est en ça qu’il y a peut être un rapport avec une histoire de crossDomain qui ne s’applique pas à la webcam (vu qu’elle émane du poste client).
Y’a déjà une tartine de remarque sur draw(à dans la livedoc de macromedia, et notament de blème avec firefox, donc je pense que c’est pas un hazard. On trouvera bien
2 May 2006 à 1:48 pm
Salut,
j’ai fais la même expérience à peu prêt à partir de vidéos enregistrées via flashMediaServeur. Et j’essaie de faire une simple capture de la première image en utilisant BitmapData.draw().
Ca fonctionne nickel quand je suis dans flash mais ça ne marche plus dès que le swf est mis sur mon serveur et j’ai en retour “violation de la securité sandBox”… As tu trouvé une solution pour authoriser cette opération?
Merci d’avance,
2 May 2006 à 2:13 pm
Salut,
Non je ne connais pas cette erreur :/
Je n’ai pas le temps de regarder du côté de la doc de Flash pour voir quand cette exception est lancée, mais peut être cela vient t’il du fait que le bitmap que tu déformes n’est pas complètement chargé, et que le draw n’est pas possible (en local ce serai tellement rapide qu’il n’y aurait pas de pbs).
Essaie peut etre une simple temporisation avant de faire cette capture…
Je n’ai pas d’autres idées pour le moment dslé.
Bon courage++
22 July 2006 à 11:24 pm
Alors là, je suis impressioné de chez impressioné.
Vous êtes des dieux les gars.
Depuis le temps que j’avais un projet en tête et que je ne savais pas comment déformé un clip. Je vais maintenant enfin pouvoir le réalser grace à votre class…
Mille Bravo
6 October 2006 à 9:39 pm
hello j’aimerais telelcharger le programme pour deformer mais je sais pas comment faire qqn peut m’aider please
7 November 2006 à 4:00 pm
Hello!
Je cherche à appliquer la class DistortImage à une simple image.
Quelqu’un pourrait m’éclairer?
Merci!
Super en tout cas la version en ligne! Dommage que cela ne passe pas sous FF!
4 December 2006 à 11:48 am
Bonjour,
merci pour ce systeme de déformation d’images, maintenant je cherche comment déformer deux images dans le même fla j’ai essayé en duplicant les instances sans résultat, alors je me dis qu’il faut certainement rentrer dans la Classe, pourriez vous m’aider ?
9 December 2006 à 4:21 pm
c koi le mot de passe pr decompresser le fichier???
5 February 2007 à 7:28 pm
Hello, elle est très intéressante cette classe et semble correspondre à peu près à ce que je recherche (mais pas tout à fait)…
Je veux réaliser un slider présentant une succession d’images chargées dynamiquement (fichier XML et loadclip), images qui seront affichées en perspective et éventuellement déformées en animation…
Possible ou pas possible ?
22 March 2007 à 11:32 am
Bonjour !
Ta classe est super intéressante. J’aimerais partir de cette classe pour développer une perspective. Comme le site sur lequel je voudrais la mettre sera mis en ligne par une entreprise (mais pas pour vendre des choses), je ne sais pas si la licence l’autorise. Peux tu me dire si tu es d’accord ou non.
Merci.
30 March 2007 à 8:21 am
Bonjour,
Vraiment génial ta classe, merci de la partager.
5 April 2007 à 3:31 pm
Qu’est ce que c’est bien !!! bravo
23 April 2007 à 9:36 am
var b:BitmapData = new BitmapData( _root.mVideo._width, _root.mVideo._height );
Cette ligne me retourne l’erreur “impossible de charger la classe BitmaData”. Par contre si je la remplace par
b = new BitmapData( _root.mVideo._width, _root.mVideo._height );
là ca passe. Une explication ?
23 April 2007 à 10:11 am
Bon tout fonctionne apparemment si on met les “import” sur la frame où on utilise les classes. C’est un peu con, je pensais qu’il suffisait de les mettre sur la 1ere frame de l’anime.
Désolé pour le dérangement
9 May 2007 à 1:23 am
ja krevetko! Vsem sasat’!
24 June 2007 à 6:03 pm
merci beaucoup pour cette classe, elle m’a beaucoup aidé, et elle est très efficace!
8 July 2007 à 6:33 pm
[…] de mouvement bisare à vos MovieClip en mouvement, j’utilise une version modifié de la class de distortion de kiroukou, l’effet peut s’appliquer lors d’une translation, d’un drag les MovieClip […]
29 November 2007 à 3:14 pm
Bonjour, c’est justement ce que je cherche, pour appliquer à une simple image, afin de faire une simple turn table.
Merci a Kiroukou.. 
Cool, juste le temps d’analiser les 2 méthoes et propriétés et ça doit aller..
29 November 2007 à 4:05 pm
J’expérimente le truc, et je me pose une question.. pourquoi doit on créer un nouveau movieClip qui sera texturé avec un autre movideClip contenant l’image (jpg)
On ne sait pas distortioner directement le clip de base?
Autre chose, il est noté dans la classe que le parametre 2 de la méthode Distort est un link du clip de trouvant librairie, mais quan je fais ça, ca ne marche pas et la classe me retourne l’erreur prévue a cet effet.. pourtant, j’ai bien exporté vers l’image 1 pour AS et bien écrit l’ID..
Bon, je continue a expérimenter pour faire ma turnTable d’un jpeg
29 November 2007 à 10:25 pm
J’ai déposé un code qui exploite cette classe pour faire une turntable sur FlashXpress
http://www.flashxpress.net/forum/showthread.php?t=65247
29 February 2008 à 2:39 pm
Bonjour,
excellente cette classe !…
Je vois qu’elle est protégée sous la forme
* Licensed under the CREATIVE COMMONS Attribution-NonCommercial-ShareAlike 2.0
Comment faire si l’on souhaite pouvoir l’utiliser dans une application commerciale ?
1 March 2008 à 8:34 pm
Bonjour,
me contacter
++
1 March 2008 à 11:22 pm
OK parfait
mais en fait mon problème est que je n’arrive pas à trouver votre mail …
(d’où mon message dans ce blog…) … désolé…
2 March 2008 à 12:36 am
De la balle cette classe !
C’est ce que je cherchais pour faire au plus simple !
Merci !
11 April 2008 à 1:40 pm
[…] You can use the class here in […]
18 May 2008 à 9:36 pm
Hello,
Je suis un débutant.
J’aimerais charger un swf plutôt que la web cam.
J’y arrive pô
Merci