La compression d’images par les opérateurs
Il y a deux semaines, bluetouff chez reflets.info a découvert que
SFR modifie le source HTML des pages que vous visitez en 3G. « Soit », me suis-je dit. Si la pratique est condamnable de la part d’un FAI, elle n’en reste pas moins assez proche de ce que peut faire un navigateur proxy comme Opera Mini ou bientôt Chrome sur Android.
Puis ce week-end, j’ai lu le guide sur l’intégration d’email marketing chez Mailchimp. Je suis resté scotché devant ce paragraphe (page 35 dans la version PDF) :
Si possible, testez vos e-mails lors de leur envoi avec différents FAI. Différents serveurs d’e-mails altérerons votre message avant qu’il n’arrive dans la boîte de réception de votre destinataire. Par exemple, certains FAI utilisent des serveurs d’e-mails qui retireront tout contenu sous une ligne dans votre e-mail qui commence par un point (on sait, c’est bizarre). Nous avons été surpris de voir à quel point un e-mail pouvait avoir un rendu différent sous Outlook 2003, mais reçu via Comcast, Bellsouth et Earthlink.
« Pfiou », me suis-je dit. J’ai bien de la chance de ne jamais avoir rencontré ce genre de problème.
Et puis c’est arrivé. Hier. Un e-mail, tout ce qu’il y a de plus classique, intégré par mes soins, livré dans les temps. Et une heure plus tard, un mail de retour du client. « Mon collègue a un rendu bizarre sur son téléphone », avec une capture d’écran de l’application Mail sous iOS, et effectivement un rendu étrange. Différentes images, censées être sur fond blanc avec du texte dessus, ont une couleur de fond différente.
« Impossible« , me suis-je dit. Je revérifie tout de mon côté. Mes tranches, mes images, mon code. Rien. Je regarde la capture d’écran qui prouve pourtant bien l’existence d’un problème. Et puis je m’arrête sur la barre de statut d’iOS, qui indique fièrement : « Orange 3G ».
« Non », me suis-je dit. Ça ne peut quand même pas être ça. Je teste alors sur mon iPhone, chez SFR, en 3G. Rien. J’envoie l’e-mail à tous mes collègues afin de tester sur différents appareils et différentes connexions. Et là, ça y est, miracle, le bug est apparu. Et effectivement, sur une connexion Orange, en 3G, les images sont dégradées.
J’ai donc fait ce que toute personne saine d’esprit ferait dans ce cas là : un tableau avec pleins d’images de différentes tonalités de gris dans différents formats (JPG à 100%, GIF, PNG 8 bits, et un simple background HTML comme témoin). J’ai testé, via la connexion partagée de mon collègue depuis son iPhone sur mon Macbook ou sur mon iPhone.
Et le résultat est sans appel.
Les trois formats d’images sont recompressés. Mais le GIF est recompressé de manière absolument horrible, à tel point que ça saute aux yeux. Même le blanc n’est plus blanc.
J’ai fait différents tests sur des images GIF, dans différents modes d’enregistrement, avec une palette de couleurs plus ou moins élevée, pour essayer de comprendre ce qui déclenchait cette recompression. Et je n’ai pas la réponse.
D’après mes tests, ça ne dépend pas :
- De la dimension des images. Certaines images plus grandes que d’autres n’ont pas eu d’effet visible lors de la recompression par Orange.
- Du poids des images. Certaines images de 3 Ko ont été sauvagement recompressées alors que pas d’autres de 8 Ko.
- De la palette de couleurs. Certaines images forcées à une palette de 16 couleurs sont encore recompressées de manière visibles. D’autres avec 32 couleurs, pas.
Je pense que le principal coupable est donc l’outil de compression GIF utilisé par Orange, et qu’il n’y a pas malheureusement pas grand chose à faire pour éviter ça. Le problème semble connu puisqu’il avait déjà été remonté dans un article de 2011.
Une solution consisterait alors à utiliser le format PNG (8 ou 24 bits) plutôt que du GIF. Sauf que malheureusement d’anciens logiciels mails, comme Lotus Notes 6 et 7, ne supportent pas du tout le format PNG et affichent des images cassées à la place.
Je n’ai pu faire des tests que chez SFR et Orange (Sosh). Mais si vous souhaitez savoir si votre opérateur compresse comme un sagouin les images à votre place, je vous invite à tester cette page et à partager vos captures d’écran dans les commentaires.