Et alors elles en sont où ces photos ?

Hein ?

Parce que bon, c’est bien beau d’annoncer des scripts et des bidules et des machins pour trier les photos. Mais depuis que j’en parle, ça devrait être fini, non ? Eh bien non !

En fait j’ai rencontré sur cet ensemble de projets un certain nombres de … difficultés. En effet, mon dernier plan était,

  1. Tagger mes photos via iView Media Pro (et son descendant de chez Microsoft)
  2. Renommer les photos avec  XnView
  3. Et enfin créer à partir de ces images un ensemble de dossiers reprenant des éléments clés

J’avais réussi. J’avais même dans ma branche de MiniGalNano, un script (habilement nommé reload.php) qui créait des paquets de dossiers à partir des images de ma bibliothèque.

Hélas, c’est parti en sucette à cause d’une histoire débile : autant mon NAS, sur lequel tourne ce script, est lamentablement lent pour créer des vignettes de mes images (dont la résolution native est quelque chose du genre 3600×2400 pixels). J’ai même dû arrêter d’utiliser ce script tellement c’était pathétiquement lent.

Du coup, j’ai réfléchi. Réfléchi longtemps. En gros, j’avais l’outil pour héberger les fichiers, mais je n’avais pas la puissance de calcul … Ou alors, je l’avais peut-être … partiellement.

Vous savez peut-être que j’ai un iBook G4 qui traîne dans ma cave. Alors qu’est-ce qui m’empêche de mettre en place un démarrage planifié de cet iBook, pour qu’il fasse des vignettes de mes photos et les uploade ? Hein, qu’est-ce qui m’en empêche ? Rien d’autre que le temps que ça va prendre. Cela dit, ça risque d’aller vite :

  • Je peux utiliser fuse pour monter mon NAS en SFTP
  • Et je peux utiliser phatch pour faire le redimenssionement. (et comme c’est du Python, j’imagine sans problème que ça va marcher sur l’iBook).
  • Par contre, pour démarrer/arrêter automatiquement l’iBook, je ne sais pas trop comment faire … Et surtout comment faire pour que l’iBook s’arrête dès qu’il a fini de bosser.
Publicités

Mais pour les photos, il y en a un de gestionnaire ?

parce qu’effectivement, pour la musique il y en a peut-être pas, mais après tout, je ne gère pas que de la musique, j’ai aussi des photos, pour lesquels, vous le savez, j’aime jouer avec les tags iptc.
Vous ne le savez peut-être pas, mais pendant un moment, j’utilisais iView Media Pro. Et suite à la réinstallation de mon ordinateur, j’ai fait un grand pas en avant dans l’abandonware, je suis passé à Microsoft Expression Media 2008. Et ce, malgré le mécontentement des afficionados du premier, qui considèrent le second comme une trahison. Je reconnais toutefois à ce second un grand pas en avant : on peut géotagger les photos … enfin, à moitié.
En fait, on peut positionner le lieu de prise de vue sur une carte (toute droit tirée de Microsoft Pro Photo Tools), mais on ne peut pas faire le géocodage inverse (c’est-à-dire déduire, quand c’est possible, une adresse postale de ces coordonnées). C’est malheureux, parce que ça va encore m’obliger à installer des gadgets à la pelle. Parce que moi, avoir l’adresse dans des caractères lisibles, j’aime bien. Cela dit, peut-être que c’est tout simplement que je ne comprend pas encore très bien toutes les subtilités du soft.
L’avantage énorme, c’est quand même que je peux me passer de Picasa, qui n’est pas mauvais en soi, mais que je trouve franchement insuffisant.

Une idée que je n’implémenterai (peut-être) pas

Ce week-end, j’ai fait un peu de retag de photos (ben oui, c’est indispensable pour avoir une photothèque de qualité). Donc pour ça, j’ai lancé mon plus tout jeune mais toujours vaillant iView Photo Pro, et je me suis mis au boulot. Et, à un moment, en regardant l’onglet organisation, j’ai eu une illumination.

Parce que dans cet onglet, on voit plusieurs schémas d’organisation des photos :
  • par date
  • par lieu
  • par mot-clé
  • par événement

Ca ressemble un peu à ce que j’avais vu il y a un moment. Sauf que là, c’est déjà fait par iView grâce à tout mon boulot.

Et donc, j’étais tranquille, en train de prendre ma douche, quand je me suis dit à peu prés « mais dis donc, si Iview sait le faire aussi facilement, c’est sans doute raisonnablement facile à faire dans du code, et c’est peut-être pas la peine de bouger les photos pour les voir selon ces axes d’organisation ». Et j’ai eu une sacrée bon sang d’idée. Que je vous expose maintenant.
Si je crée un file system pour dokan/(mac)fuse qui reprend ces éléments d’organisation, je peux « très facilement » créer dans mon Windows un disque dur virtuel dans lequel mes photos apparaissent bien rangées, même si sur le disque dur elles sont en tas, non ?
Pour ça, tout ce qu’il me faut, c’est
  • JDokan
  • une librairie de lecture IPTC un peu complète (comme par exemple celle de Tidalwave : Mistral)
  • Une bonne dose d’huile de coude et de code Groovy/Java
Et avec ça, je n’aurais plus à m’embêter à déplacer physiquement les fichiers, puisque ce sont leurs métadonnées qui les rangeront automatiquement ! Et même ma femme sera contente.
En fait, avant ça, je pense que je vais prototyper le truc avec un disque virtuel posterous …

Un futur ordinateur … du futur

Depuis un an, à cause de la fichue obsolescence programmée d'Apple, je réfléchis à remplacer mon vaillant iBook, qui a maintenant 4 ans, par autre chose.

Au début, j'ai commencé par regarder les netbooks, en particulier l'Acer aspire 751H : pas gros, bon écran. Bon, il n'est pas forcément puissant, mais comme tous les vieux informaticiens, je trouve que la plupart des ordinateurs modernes sont trop puissants.
Et puis j'ai compris qu'en fait, je n'avais pas besoin d'un ordinateur portable, j'avais juste besoin d'un ordinateur pas trop moche (parce que les tours, c'est sacrément moche, quand même, avec tous ces fils partout).
Donc, j'ai commencé à regarder du coté des ordinateurs tout-en-un :
  • HP Touchsmart iQ 522: joli (de mon point de vue), tactile, puissant, et assez cher
  • Sony Vaio VGC-JS2E : joli (du point de vue de ma femme), pas tactile, aussi puissant, et à peine moins cher. Il a aussi l'inconvénient majeur pour moi d'être un Sony vaio, et donc fourni avec tout un tas de logiciels foireux et inutiles.
Et puis, en farfouillant un peu, je me suis rendu compte que la sortie de Windows 7 allait être l'occasion, pour les taïwannais fous, de sortir des modèles équivalents aux deux précédents, mais nettement moins chers. Je pense par exemple aux Asus eeeTop 22" ou MSI Wind Top AE 2200. Bref, le moment du choix n'est peut-être pas encore tout à fait arrivé. Comme tout le monde, je vais attendre le 22 octobre pour que la situation se décante …

iPhoto corrector

Bon, ben voilà, en une matinée de travail, j'ai enfin ce que je voulais : un script qui, en partant des données exportées par iPhoto, écrit les métadonnées XMP/IPTC qui m'intéressent. Bon, pour l'instant, il n'y a que les mots-clés, mais maintenant que je maîtrise le truc, je vais sans doute en rajouter d'autres … Enfin, si j'arrive à résoudre les dramatiques problèmes de lenteur du truc (qui sont peut-être dûs à ruby, peut-être à mon NAS – ben oui, les photos sont stockées dessus).
Bref, ça marche, et c'est l'essentiel.
Ce qui est rigolo, en revanche, c'est que je n'utilise rien de ce que j'avais prévu :

  • je voulais utiliser hpricot, mais finalement, j'utilise plist (parce que bon, la vision Apple du XML est franchement folklorique)
  • je voulais utiliser ruby-xmp, mais finalement j'utilise MiniExiftool (qui a le bon goût d'être gratuite)
  • Et en bonus, j'utilise optiflag qui est vraiment pratique pour la ligne de commande

Et maintenant, la question cruciale : qu'est-ce que je fais de ce micro-script ?
A priori, ça n'intéresse que moi. Mais si toi, dans le fond, tu es intéressé par ce fix pour iPhoto, je veux bien le rendre public et peut-être même l'améliorer …

IPTC, XMP ? Ruby à la rescousse !

http://github.com/whymirror/hpricot/tree/masterBon, comme je le disais, de retour de vacances, iPhoto m’énerve toujours autant avec sa non-gestion des tags IPTC/XMP.

Alors cette fois-ci, ça suffit !
Je sais, depuis bien longtemps, que dans une bibliothèque iPhoto, il y a toujours un fichier AlbumData.xml qui contient toute la base de données de photos. Je vais donc l’utiliser comme source pour lire les infos que je vais ajouter dans les tags IPTC/XMP des photos. Comme ça, je serais tranquille.
Et franchement, l’algorithme est hyper-pipeau :

Lire le fichier XML

  • Pour chaque tag, mémoriser son id
  • Pour chaque photo, récupérer les tags par leur id
  • Ecrire chaque tag en IPTC ET en XMP dans la photo

Et ce sera tout.

Pour ça, j’aurais besoin d’Hpricot (RPI _Why, RIP) et d’une API pour écrire l’IPTC et l’XMP (et vu nos usages, je me demande si l’XMP n’est pas plus important que l’IPTC …)
Et avec ça, « normalement », si tout se passe bien, j’aurais mes tags en IPTC et en XML, ce qui sera bien pratique pour exploiter correctement ces photos.

Est-ce que je peux faire mieux qu’iPhoto ou Picasa ?

Depuis un certain temps, je caresse l'idée de me faire mon propre logiciel de gestion de photothèque.

La raison en est simple : si iPhoto est très bien, il n'est pas multiplateforme pour deux sous, et les logiciels windowsiens sont assez loin de son ergonomie (même Picasa est encore assez loin du compte). Et comme j'abandonne peu à peu mon iBook (bien qu'il reste encore une machine à surfer très agréable), il me faut une solution compatible Windows (je me pencherai plus tard sur la gestion de l'iptc dans Vista).

Bref, je caresse l'idée.

Seulement, j'ai déjà été calmé en septembre quand Google a ajouté la reconnaissance faciale à Picasa (hélas seulement dans les albums web). Et là, je suis encore plus scotché parce que iPhoto fait la même chose, mais dans le logiciel. Et ça, ça fait toute la différence pour quelqu'un comme moi qui veut garder sa photothèque à la maison.

Alors bien sûr, comme Rui le dit dans son excellent article The last macworld, les tags risquent fort d'être enfermés dans la base propriétaire d'IPhoto. Et les tags EXIF risquent également d'être dans une belle mélasse. Mais quand même, c'est une sacrée bonne idée.

Hélas, iPhoto est toujours une application mac-only.

Et ça, ça me donne quand même du courage.

Parce que si je ne peux certainement pas faire aussi joli qu'iPhoto, je dois quand même pouvoir faire quelque chose d'un peu pratique rapidement (en partie grâce à majick-properties). ou tout au moins quelque chose du niveau de l'appli de Belzel (oui, j'ai un collègue qui veut faire un peu le même genre de trucs mais en C-Qt ou je ne sais plus quoi) …*

Mais avant de recommencer à coder (parce que j'avais déjà fait un premier jet complètement bancal), j'ai plusieurs choses à faire :

  1. Evaluer les bibliothèques Java de lecture/écriture de tags EXIF/IPTC (j'ai des idées assez claires là-dessus).
  2. Trouver une bonne interface graphique
  3. (optionnel) trouver un moyen de reconnaître les visages en Java

Enfin, le 3, ça peut être dans une version suivante, quand même …

il m’avait prévenu, le bougre

Cette semaine, j'ai vécu une espèce de montagne russe un peu bizarre …

En effet, Jeudi, j'ai découvert blueMarine, une tentative en java de copie d'Adobe Lightroom, je pense. En tout cas, c'est la proximité que montrent le site de blueMarine ainsi que les screenshots de Lightroom.

Bref, ça avait l'air prometteur.

Ce matin, n'écoutant que mon courage, je télécharge blueMarine (ouch, 30 Mo, j'y reviendrai …), et je le lance.

Bon, c'est sans doute une bonne copie de Lightroom, mais qui souffre d'un gros problème : lorsqu'un logiciel se présente comme étant orienté workflow de traitement d'image, on s'attend à être largement guidé dans ses activités, un peu comme, par exemple, Eclipse guide le développeur Java dans ses activités grâce aux différentes perspectives. là, rien de tout ça ! On a une fenêtre avec un bon paquet de panneaux différents, et dans tout ça, je n'ai pas su quoi faire. Et le pire, dans tout ça, c'est que blueMarine propose un support de l'IPTC digne d'iPhoto '06, que je viens de mettre à jour …

Bref, ça relance (oui oui, une fois de plus) mon projet de me faire mon propre logiciel de gestion de photothèque avec les fonctions qui collent à ma méthode de travail.

N'empêche, un truc m'a perturbé.

Vous autres, mes lecteurs chéris, ne le savez peut-être pas (sauf évidement mon fan), mais je bosse dans une boite qui édite des logiciels en java. Et franchement, nous, pour faire un équivalent de ce blueMarine, il ne nous faudrait pas 30 Mo, mais 4 ou 5 (à cause des images). Et cette réflexion est le signe de deux choses :

  1. D'abord, j'intègre complètement la philosophie de ma boite qui est de dire que, pour un logiciel, la taille du téléchargement compte
  2. Ensuite, pour utiliser ce logiciel, un utilisateur sans JRE doit télécharger un truc chez Sun (avec le JDK6 update 10, ça va vite) et après se manger les 30 Mo supplémentaires dont je ne veux même pas connaître l'intérêt, mis à part peut-être montrer que l'auteur du logiciel connaît la plateforme Netbeans, ce qui n'est pas forcément une bonne chose, puisque ça lui a été l'envie de faire des choses propres tout seul.

Bon, bref, assez râlé, revenons à des solutions qui marchent, en l'occurence iPhoto '08. Cette mise à jour apporte une nouveauté graphique inutile : les événements et, surtout, surtout, l'export des champs IPTC. Et ça, ça rend encore une fois iPhoto indispensable à ma gestion de photothèque. grmbl.

Au moins, ça marche bien et simplement 

367

Comment j’en ai marre des softs de gestion de photo !

Ca doit faire le dixième billet que j’écrit sur ce sujet, et je crois que c’est le billet de la fin.

Dans le précédent, je disais qu’Abander semblait être le concurrent le plus sérieux au titre.

Pauvre de moi. C’est en fait totalement inutilisable comme truc.

Les messages d’erreur sont illisibles, la complétion des tags est loin d’être bien pensée, bref, ça ne marche pas. En fait, de tous les trucs que j’ai utilisés, le plus convaincant est tout simplement IPTCExt !

Donc bon, j’attends Noël et l’arrivée de mon disque dur réseau, et je verrais après.

Mais comment faire aussi bien que iPhoto ?

Parce que le problème, c’est que maintenant que j’ai retrouvé LE logiciel essentiel pour générer de l’information IPTC(1), il faut que j’arrive à refaire tout ce que je faisais avec iPhoto. Oui, mais, qu’est-ce qu’on faisait (ou plutôt qu’est-ce qu’on fait ?) avec iPhoto ?

  1. Quand on revient de nos vacances, ou d’un séjour quelconque, notre appareil photo est plein … de photos. Donc on le branche, et on synchronise avec iPhoto. Bien sûr, avec Windows, quand on branche l’appareil photo, il y a un dialogue qui apparaît pour copier les photos, mais je n’ai jamais rien compris à son utilisation… Faut que je trouve comment ça marche
  2. Ensuite, je prend les photos, je les tagge avec le nom des gens ou deux ou trois tags valises (paysage, animaux, …) Ca, c’est exactement la partie où Pixvue va rendre service, puisque je ferais maintenant la même chose (en mieux) dans mon explorateur de fichiers. En tellement mieux que je vais rajouter du geotagging et des catégories.
  3. Pour la version papier, ma femme choisit les photos à développer, les mets dans un dossier d’iPhoto qu’on exporte sur le bureau avant de l’envoyer au labo photo. Ca, encore une fois, ça doit bien se faire en copiant bêtement les fichiers, je pense.
  4. Et finalement, on a une série d’albums intelligents dans iPhoto, avec les photos non taggées, celles qui sont belles, et un dossier par personne de la famille. Je dois pouvoir émuler le même comportement avec un outil de renommage de fichiers, mais je ne pourrais pas alors avoir la même photo dans plusieurs dossiers. D’un autre coté, je crois que l’utilisation de Picasa pour ça, dont un lien du précédent article parlait, devrait tout à fait faire l’affaire.

Je vais donc tester deux ou trois de ces idées maintenant …

Bon, je viens de tester XNView et Pixvue, et je suis plutôt calmé. Le gros problème de ces logiciels (qui était aussi le problème d’iPhoto avant que je n’installe Keyword assistant), c’est la saisie des mots clés. Parce qu’à chaque fois, il faut saisir un mot clé, taper entrée, et éventuellement recliquer dans la zone de texte. Et pour Pixvue, il y a même un problème encore plus gênant : si je sélectionne dix fichiers dans mon explorateur, et que je fais le clic-droit/Attributes/Edit keywords… il m’ouvre ma popup (ça c’est bien), mais il me l’ouvre pour chaque fichier, et pas une fois pour tous les fichiers ! Du coup, je dois retaper mes mots-clés à chaque fois … Impossible.

Mais … mais … mais

J’ai appris dans la journée qu’en fait, si je fouille bien, Picasa dispose d’outils d’édition IPTC. Je vais tester tout de suite, et là, ce sera la fête.

Et effectivement, Picasa gère bien les tags IPTC … J’ai un peu envie de dire que je suis un gland, parce que Belzel m’en avait parlé il y a deux semaines, et que connement, je l’ai un peu pris de haut. Donc toutes mes plus plates excuses avec deux semaines de retard. Oui, Picasa, c’est bien… Bon, j’ai pas encore trouvé la clé des albums intelligents, mais ça viendra.

  • (1) et dire que depuis le début, je disais incorrectement EXIF. En fait, j’ai appris sur un des différents sites que j’ai consulté qu’EXIF, c’est pour les infos de l’appareil photo, alors qu’IPTC, ça ne concerne que les métadonnées de l’utilisateur, comme les mots-clés, la localisation, la catégorie, le titre, …