# WebP

WebP est un format d'image matricielle développé et mis à disposition du public par Google. Il exploite un algorithme de compression avec pertes prédictif utilisé pour les images clés du VP8 (qui est le codec vidéo du format WebM) et un conteneur léger et extensible RIFF$^,$.
Google le présente comme mieux adapté que les compresseurs précédents aux processeurs actuels et surtout aux densités de pixels des écrans actuels (110 à 240 ppi). Par ailleurs, toujours selon Google (en 2013), 60 % des octets transmis sur la toile seraient des images, et WebP procurerait de 30 % à 80 % de réduction d'espace face à JPEG et PNG.

## Format

Un fichier WebP est un fichier RIFF ayant WEBP comme identificateur de format. Il contient une unique image matricielle compressée en VP8 (avec le même algorithme que les images clefs des vidéos compressées avec ce codec), marquée comme bloc VP8␣(le glyphe « ␣ » représente une espace) (avec pertes), ou VP8L (sans perte). Il peut également contenir jusqu'à quatre métadonnées supplémentaires : le nom de l'auteur de l'image, le titre de l'image, des informations sur le droit d'auteur et des commentaires.
La taille maximale d'une image WebP est de 16 383 × 16 383 pixels, soit environ 268 mégapixels.
Spécifications du conteneur WebP :
* Fonctionnalités utilisées dans le fichier (marqué comme bloc VP8X) ;
* Profil de couleur ICC (marqué comme bloc ICCP) ;
* Possibilité d'animations (à la manière des GIF) (marqué comme bloc ANIM) ;
* Transparence (canal alpha) (marqué comme bloc ALPH) ;
* Option de compression sans perte de qualité avec le format WebP Lossless;
** Données de l'image (marquées comme bloc VP8␣(le glyphe « ␣ » représente une espace) ou VP8L) ;
* Métadonnées EXIF (marquées comme bloc EXIF) ;
* Métadonnées XMP (marquées comme bloc XMP␣(le glyphe « ␣ » représente une espace)) ;

### Historique

Google a annoncé en mai 2011 entre autres le support pour les métadonnées XMP, les images animées (similaire aux GIFs animés), les profils ICC (implémentés le 3 octobre 2011), une option de compression sans perte de qualité, le canal alpha (implémentés le 18 novembre 2011), l'accélération matérielle compatible VP8, les images en 3D stéréoscopique et les images multiples (spriting) accessibles facilement en HTML ; exemple :

## Adoption par l'industrie

Google annonce comme raison de la création de ce format la volonté de réduire la quantité de données circulant sur Internet car, selon les développeurs, les images représentent en moyenne 65 % des données reçues lors de la consultation d'une page web. Des tests réalisés par Google en transcodant un million d'images déjà compressées avec pertes montrent qu'en moyenne le WebP réduirait la taille des fichiers de 39 % par rapport aux formats JPEG, PNG et GIF, sans perte de qualité perceptible.

### Navigateurs web

Chrome (et sa version libre Chromium) a été le premier navigateur Web à prendre en charge nativement le format WebP, suivi ensuite par Opera.
Le navigateur Edge (mais pas Internet Explorer 11) utilise le format WebP à partir de la mise à jour d'octobre 2018 (1809) de Windows 10.
Le navigateur Firefox (dans toutes ses versions, y compris Android) prend en charge le WebP à partir de la version 65 (29 janvier 2019), ce qui peut paraître comme un revirement de la part de l'éditeur qui avait mis en place MozJPEG (en), une alternative à WebP, le format de Google ayant été jugé auparavant insuffisamment performant en matière de compression.
Le navigateur Safari a pris en charge le format WebP durant une version bêta de macOS Sierra et iOS 10, et offre une prise en charge depuis la version 14 (parue le 16 septembre 2020) sur iOS et macOS Big Sur.
La lecture de ce format d'image est également possible dans tout navigateur compatible avec le format WebM grâce à une bibliothèque écrite en JavaScript.
Android supporte nativement le format WebP à partir de la version Android Ice Cream Sandwich (4.0), de ce fait les navigateurs utilisant l'API système, comme Android browser (« Internet »), Chrome Mobile, Zirco Browser et le navigateur Dolphin.

### Logiciels de traitement d'image

Le support natif de ce format est aussi disponible pour les logiciels suivants :
* ACDSee
* Acorn (depuis la version 2.6)
* Affinity Designer
* DigiKam
* GDAL (depuis la version 1.9.0)
* GIMP (depuis la version 2.10.0)
* ImageMagick
* IrfanView
* Konvertor
* Paint (logiciel Microsoft inclut dans Windows 10) : il peut ouvrir et convertir le format .webp en .jpg ou .png
* paint.net (nativement à partir de la version 4.2.5)
* Pixelmator (depuis la version 1.6.2)
* Sketch
* XnView
* FastStone Image Viewer
Il existe en outre des plugins sous licence GPL pour Photoshop. En 2019, Google a publié un plug-in gratuit qui permet la prise en charge de WebP dans Photoshop. La version 1.4 de darktable permet d'exporter les images au format WebP.

## Critiques

La fondation Mozilla a annoncé en avril 2011 ne pas vouloir implémenter le format WebP tel qu'il existait à ce moment (le format ne prend en charge l'animation, les profils ICC, et les métadonnées XMP qu'en octobre 2011, et la compression sans perte ainsi que la transparence qu'en novembre 2011), invoquant des gains peu évidents, une méthodologie de test peu convaincante utilisée par Google, le manque de fonctionnalités clés, et une adoption incertaine de la part des auteurs. La fondation Mozilla a décidé de reconsidérer son intégration en 2013. Elle a publié une nouvelle étude ne modifiant pas son avis sur le sujet$^,$. La fondation Mozilla travaillait au même moment sur une amélioration du codage du JPEG appelée MozJPEG (en), qu'elle a publié le 15 juillet 2014.