Opinions Libres - Le Blog d'Olivier Ezratty

Le hacking des appareils photos

Post de Olivier Ezratty du 10 février 2010 - Tags : Logiciels,Logiciels libres,Photo numérique | 14 Comments

On peut changer le système d’exploitation de son micro-ordinateur, PC ou Macintosh, on peut jailbreaker son iPhone, et ces systèmes évoluent régulièrement à force de mises à jour et autres services packs. On peut aussi y installer toutes les applications de son choix.

Mais pour la plupart des autres appareils de l’électronique de loisirs, on en est réduits à utiliser le logiciel qui y est intégré, le plus souvent sous la forme de “firmware”, un logiciel inscrit dans une mémoire réinscriptible. Pas d’installation possible d’applications ! Et juste quelques rares mises à jour de firmware au gré de la volonté du fabricant. Quel qu’il soit, et notamment chez les leaders que sont Canon et Nikon. Pour le numéro trois du marché, Sony, il semble que les mises à jour du firmware soient encore plus rares pour les reflex de la série Alpha. Or le décalage est de plus en plus grand entre les capacités techniques de ces matériels, la diversité de leurs usages et leur évolutivité permise par les fabricants.

C’est le cas des appareils photos numériques, notamment les réflex qui sont traitent maintenant à la fois de la photo, de la vidéo HD et sont dotés de fonctionnalités assez riches. Ils s’appuient sur un – voire deux – processeur très souvent construit autour d’un coeur ARM, le même que l’on retrouve intégré dans les “System on Chip” (SoC) qui équipent les set-top-boxes, les télévisions, de nombreux smartphones et aussi l’iPad d’Apple.

Le problème, c’est que ces différents appareils sont fabriqués par des constructeurs asiatiques, essentiellement japonais, dont la culture logicielle est plus que déficiente. Au Japon, l’immatériel a beaucoup moins de valeur que le matériel dans la culture des ingénieurs. La valeur du logiciel dans le matériel est toujours mise en arrière plan. Pourtant, du fait de leur sophistication, les appareils réflex pourraient devenir la base d’écosystèmes logiciels tout autant qu’un navigateur Internet (comme Firefox) ou un mobile (tel un smartphone). On pourrait rêver un peu : quid de la possibilité d’ajouter des extensions logicielles dans le firmware d’un appareil réflex, pour améliorer la gestion et le tri des photos, pour traiter ses vidéos, etc ?

Comme les constructeurs n’y mettent pas du leur, le marché “bricole”. C’est le cas du Canon EOS 5D Mark II introduit sur le marché fin 2008 et que j’utilise depuis l’été dernier. Il est équipé du processeur Digic IV de Canon (“carte mère” ci-dessous).

Canon 5D Mark II Digic 4

Il se trouve que c’est le premier réflex à avoir intégré la prise de vue vidéo en Full HD (1920×1080 pixels) et en “Full Frame” (avec un capteur de 24×35 mm). Et il est encore le seul à le faire à ce jour ! Mais seulement en 30p (30 images par secondes). Or en cinéma ou en télévision, la cadence attendue est le 24p (plus précisément, le 23,976 images/secondes) ou le 25p. Quand au 30p du NTSC, c’est en fait du 29,97 images/secondes.

Les réalisateurs de films qui apprécient le 5D II pour la qualité de ses images vidéo et la maitrise de la profondeur de champs avec ses optiques sont agacés par ce 30p. Pour passer au 24p ou au 25p ou au NTSC 29,97 fps, ils doivent convertir leurs vidéos par logiciel. Cela prend non seulement du temps mais le résultat n’est pas parfait.

Entre temps, Canon a sorti le 7D, un appareil qui n’est pas “plein format” comme le 5D II, mais qui, lui, est capable de gérer le 24p et le 25p. Les utilisateurs de 5D II attendent donc une mise à jour du firmware de la part de Canon pour supporter ces cadences. Canon a annoncé en octobre 2009 qu’il proposerait cette mise à jour d’ici avril 2010. Sept mois d’attente, interminables pour les passionnés qui ont adopté le 5D II pour tourner des films de toutes sortes (publicité, entreprise, longs métrages, documentaires). En mai 2009, Canon avait bien sorti une mise à jour de son firmware pour ajouter le contrôle manuel de l’exposition pendant la prise de vue vidéo, mais c’était une bien maigre mise à jour. C’était une réaction à une demande pressante des utilisateurs de l’appareil.

Des développeurs indépendants n’hésitent pas à créer leur propre firmware. Ils se documentent je ne sais comment et proposent (à leurs risques et périls) aux utilisateurs de ces appareils de mettre à jour leur réflex avec un firmware de leur cru. C’est le cas du firmware de Magic Lantern créé par un jeune caméraman aux compétences pointues en logiciels embarqués, Trammel Hudson. Il a réalisé le “reverse engineering” du Canon 5D II et créé une version de son firmware qui s’installe en mémoire RAM et sans écraser celui de Canon.

MagicLantern website

Ce firmware améliore les fonctionnalités d’enregistrement audio et vidéo. Il ajoute notamment un vumètre audio et réduit le bruit de fond de l’enregistrement en désactivant l’amplificateur interne. Côté vidéo, il ajoute un contrôle de l’exposition avec un “Live waveform display” qui permet par exemple de régler l’éclairage d’un fond vert pour réaliser une incrustation. Il permet aussi une sortie Full HD via l’HDMI pendant l’enregistrement, alors que le firmware de Canon utilise l’HDMI mais avec une sortie “SD”. Le tout est gratuit et en licence GPL. L’auteur souhaite carrément créer une plateforme ouverte et extensible pour cet appareil. Une bonne idée mais qui risque fort d’avoir du mal à décoler car le croisement des passionnés de photo et de vidéo HD sur cet appareil et du développement dans l’embarqué ne donne pas une grande masse de contributeurs potentiels.

Il existe une autre offre, avec CHDK, qui propose des firmware pour un grand nombre d’appareils compacts toujours chez Canon et avec une liste de fonctionnalités encore plus impressionnante que pour le MagicLantern et orientées “photographie” : enregistrement RAW, contrôle manuel, etc.

La liste des fonctionnalités pouvant être ajoutées à un appareil via du logiciel est en effet très longue. Rien que pour le Canon 5 Mark II, les évolutions du logiciel qui seraient utiles tant pour la vidéo que pour la photo sont nombreuses, avec par exemple :

  • Permettre un tournage en 720p et pas seulement en 1080p. Utile pour publier ses vidéos sur Internet.
  • Améliorer les algorithmes d’autofocus utilisés pendant la prise de vue vidéo. Car en standard, ils ne fonctionnent vraiment pas bien du tout.
  • Zoom numérique pour aller au delà de son zoom optique en vidéo.
  • Montage vidéo de base, pour découper par exemple un fichier vidéo en deux. Permettant de faire le ménage sur sa carte CompactFlash lorsqu’elle est remplie.
  • Création automatique d’un nouveau fichier à la volée lorsque l’on a atteint la limite des 4 Go provenant du système de gestion de fichier FAT32 utilisé (en attendant l’utilisation de l’ExtFAT qui la fera sauter).
  • Prise de vue de photos automatique à intervalle régulier, sans avoir à passer par un logiciel et un micro-ordinateur.
  • Prise de vue vidéo qui se déclenche automatiquement lorsqu’il y a du son. Qui permettrait d’enregistrer des conférences en évitant les “blancs”.
  • Affichage de la vidéo via l’HDMI en plein écran 1080p.
  • Correction de la balance des blancs sur les photos enregistrées en RAW permettant de gagner un peu de temps dans le contrôle qualité et de préparer la dérawtisation.
  • Correction de la balance des blancs dans les vidéos enregistrées (probablement problématique car elles ne sont pas enregistrées en “RAW video”).
  • Identification automatique des photos ratées (surexposées, sousexposées) pour les effacer d’un coup. Idem pour les photos entièrement floues.
  • Effacement des photos à partir de ou jusqu’à un endroit donné de la carte mémoire. Qui n’a pas oublié d’effacer sa carte mémoire avant de couvrir un événement et de ne s’en rendre compte qu’après avoir pris plusieurs photos ?
  • Visualisation des vidéos indépendamment des photos.

Et ces besoins ne pourraient que s’élargir encore le jour où les appareils réflex seront connectés d’une manière ou d’une autre à Internet et en standard (par seulement via la chèrissime extension Wifi, le WFT-E4 qui est à 1000€). On pourrait alors imaginer piloter son réflex (installé sur pieds) avec son smartphone et autres joyeusetés du même genre.

Bien entendu, ce sont des considérations marketing et économiques qui freineront ces évolutions logicielles. L’intérêt des constructeurs d’appareils photo est de mettre à jour leurs gammes d’appareil pour pousser à la consommation et au renouvellement des bases installées. On le voit bien avec les rumeurs qui courent sur le 5D Mark III qui suivrait l’actuel 5D Mark II. Ses fonctionnalités évoluées relèveraient pour une grande part du logiciel, et pas forcément des capacités matérielles. Certes, le processeur de cette nouvelle version serait plus puissant, mais le processeur existant est largement suffisant pour faire un tas de choses !

Il est aussi clair qu’en se lançant dans une ouverture logicielle, les constructeurs mettraient le doigt dans un engrenage délicat : complexité issue du choix et de l’ouverture, support technique, problèmes de stabilité du logiciel, manque de compétences en développement logiciels chez les fabricants, etc. Mais l’attente est de plus en plus forte pour ces évolutions logicielles et il leur faudra les prendre en compte un de ces jours.

Alors, un Canon AppStore ou un Nikon AppStore relèveraient-ils de la science-fiction ? Quel constructeur sera le premier à innover en la matière ? Faudra-t-il attendre le PMA 2013 (salon de la photo à Las Vegas), la Photokina 2014 ou le CES 2015 pour voir cela arriver ?

RRR

 
S
S
S
S
S
S
S
img
img
img


Lien du blog Opinions Libres : https://www.oezratty.net/wordpress

Lien de l'article : https://www.oezratty.net/wordpress/2010/le-hacking-des-appareils-photos/

(cc) Olivier Ezratty - http://www.oezratty.net