Le JPEG est devenu la norme de facto sur le web, on le retrouve partout et toutes les tentatives pour le remplacer ont jusque-là échoué. À part pour les images animées qui exploitent le GIF et pour celles avec transparence qui sont restées au PNG, le JPEG reste largement dominant, alors même que Google essaie depuis des années d’imposer son propre format, le WEBP.
Malgré tout, le JPEG est un format ancien et qui a mal vieilli. Les images dans ce format pèsent lourd pour une qualité moyenne et on sait faire beaucoup mieux à l’heure actuelle en matière de compression. Concrètement, les techniques existent pour réduire la taille des images à qualité égale par rapport au JPEG et cela explique pourquoi des développeurs proposent régulièrement de nouveaux formats.
Nous avions évoqué en décembre dernier le BPG, un format très prometteur. Un JPEG de 2 Mo est converti en un fichier de 150 Ko, quasiment sans perte de qualité entre les deux. Mais voici un nouveau format, encore plus performant et qui a surtout l’avantage d’avoir été pensé pour le web : le FLIF (pour Free Lossless Image Format).
Derrière ce nom étrange, un format basé sur un nouvel algorithme de compression (le MANIAC qui est une variante du CABAC). Le FLIF est un format sans perte, c’est-à-dire que la qualité d’image reste strictement la même, mais cet algorithme permet de réduire la taille des fichiers à hauteur de 10 % par rapport à ses concurrents. C’est bien, mais ce n’est pas son meilleur argument.
La force du FLIF, c’est qu’il est parfaitement adapté au web. Chaque image dans ce format contient en fait une multitude de versions de moins bonne qualité. Cette approche a deux avantages sur internet : on peut obtenir immédiatement un aperçu de qualité médiocre en attendant que l’image se charge complètement ; un même fichier de base peut servir autant d’image Retina que de version standard.
Une image FLIF affiche immédiatement un aperçu de la version finale, avant de charger la version complète en passant par plusieurs versions intermédiaires. On a ainsi plus rapidement une idée du rendu final, alors que les formats traditionnels, comme le JPEG, chargent les images progressivement, du haut vers le bas. Et si on utilise une image quatre fois plus grande pour les écrans Retina, le FLIF arrête le chargement quand on a chargé une qualité suffisante.
Une excellente idée, mais qui restera au stade du concept si les navigateurs et les sites internet n’adoptent pas ce format. C’est bien là que le bât blesse, et le créateur de FLIF a beau glisser dans sa liste « À faire » la compatibilité avec les navigateurs, rien ne dit qu’Apple, Google et les autres adopteront ce format.
Même si elle est théorique, l’expérience reste intéressante et ce format a le mérite de chercher des solutions originales. Si le FLIF vous intéresse, le code source complet est disponible à cette adresse.