Manipuler les méta-données d'une image

L'action de l'association Framasoft illustrée par un défilé de mascottes de logiciels libres

À l'origine je devais faire un petit billet rapide, pour le simple plaisir de partager avec vous l'illustration ci-dessus : celle-ci a servi de fond d'écran au PC de mon ancien boulot pendant des années, et là je suis particulièrement content car j'en ai fait réaliser un tirage couleur au format A3 que je viens d'afficher sur l'armoire du bureau à mon nouveau boulot.

Cette illustration, que je dois à Pfelelep, est née en 2007 sur Framagora, le forum de Framasoft (précisément sur ce fil de discussion).

Toutefois, avant de la partager, je voulais créditer Pfelelep dans les méta-données du fichier. Mais, s'il y a pléthore de logiciels permettant d'éditer les méta-données d'un fichier audio, tel n'est pas le cas s'agissant des fichiers images. L'idée d'un petit billet rapide s'éloigne...

J'avais choisi dans un premier temps de m'appuyer sur Phatch, un logiciel graphique multi-plateforme que j'ai déjà présenté dans un précédent billet, et ses modules « Write Tag » et « Save tags ».

Au final j'ai choisi plutôt de retenir ExifTool, autre logiciel libre multi-plateforme, mais en ligne de commande cette fois. Par rapport à Phatch, il n'est pas plus difficile à maîtriser (au contraire) car Phatch nécessite malgré tout de se plonger dans les attributs propres aux différents formats de méta-données. En revanche ExifTool se revèle plus puissant en ce qu'il permet de manipuler les trois formats de méta-données existants : EXIF d'une part, IPTC et XMP d'autre part (XMP ne semble pas pris en charge par Phatch).

En l'espèce, je souhaitais ajouter le nom de l'auteur, la date de création de l’œuvre et sa licence. Puis, quitte à renseigner les méta-données de l'image, j'ai décidé d'ajouter une description de celle-ci (pour le Web sémantique, toussa...). Ce qui nous donne ces trois types d'informations à renseigner :

  • Auteur : Pfelelep
  • Description : Framasoft et les Logiciels Libres
  • Licence : Copyright, Pfelelep, 2007. Licence Art Libre http://artlibre.org

La commande qui va permettre de renseigner ces trois champs dans chacun des trois formats (car ces formats sont pris en charge diversement par les logiciels actuels) est la suivante (« framafondweb.jpg » étant le nom du fichier concerné) :

~$ exiftool -overwrite_original \\
-xmp:Creator="Pfelelep" \\
-xmp:Rights="Copyright, Pfelelep, 2007. Licence Art Libre http://artlibre.org" \\
-xmp:Description="Framasoft et les Logiciels Libres" \\
-iptc:By-line="Pfelelep" \\
-iptc:CopyrightNotice="Copyright, Pfelelep, 2007. Licence Art Libre http://artlibre.org" \\
-iptc:Caption-Abstract="Framasoft et les Logiciels Libres" \\
-exif:Artist="Pfelelep" \\
-exif:Copyright="
Copyright, Pfelelep, 2007. Licence Art Libre http://artlibre.org" \\
-exif:ImageDescription="Framasoft et les Logiciels Libres" \\
framafondweb.jpg

Vous noterez que le champ « exif:Copyright » n'est renseigné qu'à la ligne suivante : c'est en effet un champ sur deux lignes où la première est relative au photographe et la deuxième à l'éditeur. Ici j'ai fait le choix (au doigt mouillé) de ne renseigner que la deuxième.

De cette façon, nous avons pu éditer directement les méta-données du fichier existant sans avoir eu besoin de régénérer l'image, ce qui, compte tenu de son format, est à éviter (le JPEG est un format de compression avec perte).

Nous pouvons à présent vérifier que l'opération a fonctionnée en ouvrant le fichier généré dans une visionneuse d'images pour en examiner ses propriétés (ici avec la visionneuse intégrée à l'environnement GNOME) :

Première capture d'écranDeuxième capture d'écran

Tout y est :)

Tutoriel réalisé avec ExifTool 9.74 sur Debian 64 bits (paquet libimage-exiftool-perl téléchargé depuis la section main des dépôts officiels).

Vus : 815
Publié par antistress : 174