Le plugin Métadonnées Photo permet d’afficher différents types de métadonnées stockées dans les fichiers graphiques :
— les données IPTC (commentaires insérés « manuellement » par le photographe),
— les données EXIF (données techniques insérées automatiquement lors de la prise de vue),
— les données GPS (situation géographique tirée d’un positionnement GPS).
Par défaut, les données apparaissent condensées dans un pavé vert de gris (oui : vert de gris... l’idée est d’imiter approximativement les afficheurs de certains appareils reflex). Ce pavé réduit affiche les données suivantes :
— des pictogrammes indiquent quelles métadonnées ont été récupérées : EXIF, GPS et/ou IPTC ;
— le nom et la marque de l’appareil de prise de vue ;
— pour de nombreux appareils photo, une petite vignette représentant ce modèle.
Lorsque l’on survole le pavé vert, il affiche immédiatement quelques données techniques (lorsque ces données sont présentes dans l’image, évidemment) :
— la sensibilité (ISO),
— la vitesse de la prise de vue (secondes),
— l’ouverture,
— la focale de l’objectif.
Lorsque l’on clique dans le pavé (ou sur le petit bouton « plus »), celui-ci s’agrandit et affiche toutes les métadonnées :
— les données EXIF : sensibilité, vitesse, ouverture, focale, utilisation du flash, ouverture maximale, objectif utilisé...
— les données IPTC : légende, copyright...
— les données GPS : latitude, longitude, et petite croix de l’emplacement sur une mappemonde.
La vignette de l’appareil est alors plus grosse. On peut encore cliquer sur la vignette de l’appareil et afficher l’image du modèle utilisé dans sa plus grande taille. (Note : les fichiers graphiques fournis par le plugin ont une dimension maximale de 256 pixels ; on peut donc encore utiliser une image plus grande, par exemple pour l’affichage sur le site public.)
Pour l’affichage des métadonnées sur votre site public (dans des squelettes de portfolio, ou dans des « modèles » inclus dans les articles), on utilisera les nouveaux filtres : lire_exif
et lire_iptc
.
On pourra s’inspirer des fichiers inc_exif.html
et pave_exif.html
pour en comprendre le principe, finalement assez simple, et récupérer la liste des types de médatonnées les plus pertinents.
La fonction histogramme requiert GD2.
Les informations EXIF sont manipulées, sans recours à l’extension EXIF de PHP, grâce au script de Vinay Yadav (sous licence LGPL).
Les informations IPTC nécessitent la fonction « iptcparse » de PHP et utilisent la classe « class_iptc » d’Alex Arica.
Attention : l’archive Zip de ce plugin est très volumineuse, et l’installateur automatique ne peut pas la récupérer. Il est donc nécessaire d’installer ce plugin à la main.
Discussions par date d’activité
9 discussions
Bonjour à Maïeul, et Phil, JC, Vilou et les autres,
J’ai la très nette impression que le portage n’est pas encore programmé... as-tu avancé sur ce sujet de ton côté ?
Pour ma part, je voudrais juste pouvoir obtenir la date de prise de vue, mais ne trouve aucune solution viable sous SPIP (actuellement en 4.1 php7, mais je vais passer en 4.2). Quelqu’un a une idée sur comment extraire cette donnée ?
Non pas avancé de mon coté, et pas le temps / prioritaires.
Bonjour Maïeul,
Dommage... je vais voir avec un développeur freelance, et si ça le fait, je posterai le résultat.
Bonjour à vous tous... je suis un développeuse "déchue" qui n’a plus de boulot et qui essaie tout de même de faire marcher ce plugin sur une version SPIP 4.2... Je tente de transformer le code et j’ai du mal sur une ligne en particulier...
dans « iptc.php » (fonction fct_lireIPTC() )
il faut tranformer la ligne (175 peut être.. comme j’ai déjà corrigé des appels, le numéro peut être faux)
while(list($index, ) = each($valeurIPTC))
et j’ai trouvé la correction suivante à appliquer :
PHP < 7.2 while(list($var,$val)=each($_POST))
doit être transformé en
PHP >= 7.2 foreach($_POST as $var => $val)
mais comme il n’y a pas de valeur après index, je suis un peu perdue...
j’ai supposé que le développeur d’origine ne s’intéresse qu’à la clé dans le tableau... j’ai lu des docs sur PHP qui indique qu’on pouvait faire une boucle en ne s’intéressant à des colonnes du tableau en particulier... mais je me retrouve avec des comportements étrange...
quelqu’un de plus calé peut-il me confirmer si ma correction est correcte ?
foreach ($valeurIPTC as $index => $valeur )
merci d’avance. Laurence
Plus besoin de répondre. J’ai trouvé... j’y suis presque... j’ai encore des warning que je ne sais pas supprimer... mais les données s’affichent... je récupère mes titres, département pays etc... je ne sais pas comment publier cette nouvelle version du plugin... je n’ai jamais fais de correction. si une personne peut m’indiquer rapidement comment ça se passe pour que d’autres puissent éventuellement profiter...
Répondre à ce message
Bonjour,
un portage / nettoyage spip 4 est-il prévu ? pour savoir si je tente de degager du temps pour cela ... ou pas
Bonsoir,
J’ai modifié la compatibilité dans le fichier paquet.xml
Le plugin affiche les données iptc sur un spip 4.0.1 ce qui me suffit.
Je n’ai pas les données exif.
Merci
Ah oui, ce serait cool que quelqu’un porte ce plugin pour SPIP 4.
Je dirais même plus, ce serait super cool !
Oui, ce serait vraiment bien de mettre ce plugin sur la version 4.2.
Merci au volontaires :-)
Répondre à ce message
Bonjour
J’utilise avec bonheur ce plugin associé au plugin galleria dans un modèle.
Mais aujourd’hui, j’ai un souci.
Sur ce site http://www.photoclubrebecq.be/spip/ et par exemple sur cette page http://www.photoclubrebecq.be/spip/spip.php?article252 les métadonnées ne s’affichent pas.
En revanche 2 images récupérées sur le site et intégrées dans cet autre site http://escal.ac-lyon.fr/spip/spip.php?article177 affichent bien les métadonnées.
Pourtant ces 2 sites sont sous spip 3.2.8
J’ai vérifié le paramétrage, j’ai essayé de désactiver d’autres plugins, vérifié s’il n’y avait pas un mes_options.php ...
Bref je ne trouve pas la source du problème.
Si quelqu’un a une piste ...
Salut,
Même souci sur un SPIP 3.3 . Tu as quelle version de PHP ?
Bonjour
Oui j’aurais du faire un retour sur la solution trouvée par le webmestre (ce n’est pas mon site) : redescendre à une version php inférieure, la 5.6.40 pour être plus précis.
Ah oui mais c’est pas vraiment une solution durable
Répondre à ce message
Bonjour,
Savez-vous si ce plugin fonctionne en PHP7 avec un spip 3.1.6. ?
Je n’arrive pas à obtenir d’affichage des informations Exif dans l’espace privé par exemple.
J’ai l’impression que la fonction lire_exif ne parvient à lire toutes les données exif nécessaires à l’éxécution du modèle de squelettes image_pave_exif :
Lorsque je regarde ce qui est présent dans le tableau lire_exif sur une de mes photos je n’ai que :
- resolutionUnit=> 0
- FileName=> IMG/jpg/gravillons.jpg
- FileSize=> 330194 bytes
- FileDateTime=> 09-Oct-2017 22:28:52
- Height=> 750
- Width=> 1000
- IsColor=> 1
- Process=> 194
- resolution=> 1000x750
- color=> Color
- jpegProcess=> Progressive
- auxLens=>
- GPSLatitude=> 48° 23’ 0” N
- GPSLatitudeInt=> 48.003833333333
- GPSLongitude=> 4° 30’ 0” W
- GPSLongitudeInt=> -4.005
alors que ma photo contient bien plus de données exif et les valeurs make, model testé dans la fonction spip sont bien présentes dans l’exif de ma photo mais non récupérées.
Je n’ai pas vraiment de compétence en php pour débugger ce problème.
Est-ce que la librairie exifReader.php (2005 d’après mes recherches) n’est pas un peu ancienne pour fonctionner correctement en php 7 ? une autre idée ?
Merci d’avance
Stéphane
Bonjour Stéphane,
Justement j’ai fait une passe de compatibilité avec PHP7 hier (https://zone.spip.org/trac/spip-zone/changeset/106735). Cependant, également j’ai l’impression que toutes les informations ne sont pas correctement récupérées. La librairie PHP utilisée n’est plus maintenue ; il faudrait basculer sur une librairie plus récente je suppose.
Matthieu.
Bonsoir,
merci Matthieu pour ces précisions, en effet ta passe de compatibilité ne suffit pas j’ai re-testé avec la version 2.0.4 d’hier soir et c’est pareil. J’ai tenté ma chance avec l’extension exif de php mais elle est toute buggée dans ma version de php (7.0.21). Bref c’est un peu l’impasse, enfin pas totalement car j’arrive à récupérer des infos exif de latitude/longitude sur certaines de mes photos avec le script fourni... donc en bidouillant un peu le code de lire_exif je devrai m’en sortir. Je ne pensais que les exif étaient aussi pourris à gérer ( ça parle encodage, lecture binaire, big indian &co pffffff que du plaisir !). Pour le coup je voulais me faciliter la tâche en récupérant la géolocalisation des photos dans l’exif mais si ça continue je vais devoir la gérer depuis GIS en cliquant sur une carte.
Si quelqu’un a des pointeurs pour expliquer l’exif voire même même mieux une nouvelle librairie pour remplacer celle de 2005 je suis preneur ! La suite demain donc.
Merci encore !
Stéphane
Lorsque tu cherches une lib récente à jour, tu peux passer par le packagist. Ça aide à trouver des librairies populaires et souvent maintenues. https://packagist.org/?q=exif&p=0
Du coup, tu trouves par exemple (parmi d’autres) :
- https://github.com/PHPExif/php-exif
- https://github.com/pel/pel
MM.
Bonsoir,
En effet on trouve quelques librairies :-) , pour celles que tu cites :
*php-exif : il faut pouvoir exécuter du perl en commande sur le serveur (la lib exiftool qui semble faire référence , je pense que l’on peut l’exclure pour notre usage. Elle peut aussi être branchée sur la fonction native de php mais qui semble pas toujours stable...
*pel : j’obtiens de bons résultats mais j’ai l’impression qu’ il y a du boulot pour le brancher sur ce plugin spip...
Sinon :
PHPExiftool : branchée sur exiftool aussi
A voir si pel peut être intégré sans trop de mal avec Metadonnees photo.
Merci pour les infos.
Répondre à ce message
Quelle librairie PHP faut il de préférence utiliser pour écrire des data IPTC dans les fichiers images ?
Il ya une petite fonction dans les commentaires de la doc php de iptcembed
et j’ai trouvé une librairie beaucoup plus grosse ici http://www.ozhiker.com/electronics/pjmt/index.html
mais je ne sais pas ce qu’elles valent...
Répondre à ce message
Avec le squelette ESCAL est offerte la possibilité de visualiser les métadonnées dans la partie publique du site.
Voir à ce sujet cette application :
http://www.photoclubrebecq.be/spip/
Bonne chance à tous !
Répondre à ce message
Bonjour, je ne sais si ce forum est toujours actif... mais si par hasard quelqu’un avait la réponse à cette simple question : que faut-il adjoindre à lire_exif pour obtenir les dates et heures de prise de la photo ?
J’ai essayé
[(#GET{fichier}|lire_exif{dateExif})]
, mais rien ne se passe.Apparemment, c’était possible avec cet autre plugin sous spip 1.9
Merci !
Bonjour. J’ai le même besoin... Y a-t-il une solution ?
En tous les cas... je n’en ai toujours pas trouvée. Et ce forum semble abandonné. Dommage...
Pour récupérer la date, il faut faire
Mais on récupère une date YYYYMMDD que Spip ne semble pas pouvoir utiliser…
Ainsi
ne donne rien.
Mais en filtrant l’image avec une expression régulière, on peut appliquer le filtre, et tout le monde est content :
Encore un petit truc pour boucler les photos par date de création :
Cela évite de dater une à une des photos televersées dans le désordre.
Super ! Merci beaucoup ! ;-)
Répondre à ce message
il y a-t-il un moyen de savoir si cette fonction « iptcparse » est active sur le serveur chez l’hébergeur du site ?
Merci d’avance
Répondre à ce message
Bonjour,
je n’arrive pas à obtenir les données exif de mes photos.
Je suis en version SPIP 2.1.11, j’utilise Sarka spip et Médiathéque.
J’ai du rater une marche dans l’installation, mais où ?
Cordialement.
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |