Options d'encodage WebP
Le format d'image WebP d'ImageMagick accepte une multitude d'options d'encodage détaillées ci-dessous. Les options d'encodage par défaut sont :
- quality = 75
- alpha-filtering = 1
- alpha-quality = 100
- autofilter = 0
- filter-sharpness = 0
- filter-strength = 60
- lossless = 0
- method = 4
- pass = 1
- preprocessing = 0
- segments = 4
- sns-strength = 50
- target-psnr = 0
- target-size = 0
Pour les photographies numériques, comme les portraits ou les prises en intérieur, envisagez ces defines :
-define webp:sns-strength=80
-define webp:filter-sharpness=4
-define webp:filter-strength=35
-define webp:preprocessing=0
Pour les photographies en extérieur, avec un éclairage naturel, envisagez ces defines :
-define webp:sns-strength=80
-define webp:filter-sharpness=3
-define webp:filter-strength=30
-define webp:preprocessing=2
Pour les dessins à main levée ou au trait, avec des détails à fort contraste, envisagez ces defines :
-define webp:sns-strength=25
-define webp:filter-sharpness=6
-define webp:filter-strength=10
Pour les petites images colorées, envisagez ces defines :
-define webp:sns-strength=0
-define webp:filter-strength=0
-define webp:preprocessing=0
Pour les images de texte, envisagez ces defines :
-define webp:sns-strength=0
-define webp:filter-strength=0
-define webp:preprocessing=0
-define webp:segments=2
ImageMagick définit pass=6 si target-psnr ou target-size sont spécifiés. Cependant, il ne définit pas target-psnr=40 si pass est spécifié sans target-psnr ni target-size.
Si quality est spécifié, ImageMagick définit near_lossless à la même valeur. near_lossless ne peut pas être défini directement. Si quality est défini à 100 ou plus, ImageMagick définit lossless=1. Vous pouvez remplacer ce comportement avec : -quality 100 -define webp:lossless=false
Voici la liste complète des options d'encodage WebP :
| Option | Description |
|---|---|
| alpha-compression=value | encode le plan alpha : 0 = aucune, 1 = compressé. |
| alpha-filtering=value | méthode de filtrage prédictif pour le plan alpha : 0=aucune, 1=rapide, 2=meilleure. |
| alpha-quality=value | la valeur de compression pour la compression alpha entre 0 et 100. La compression sans perte de l'alpha est obtenue avec une valeur de 100, tandis que les valeurs inférieures donnent une compression avec perte. La valeur par défaut est 100. |
| exact=true, false | préserve les valeurs RGB dans la zone transparente. Désactivé par défaut pour favoriser la compressibilité. |
| auto-filter=true, false | lorsqu'il est activé, l'algorithme consacre du temps supplémentaire à optimiser la force de filtrage afin d'atteindre une qualité bien équilibrée. |
| emulate-jpeg-size=true, false | renvoie une compression similaire à celle du JPEG mais avec moins de dégradation. |
| filter-sharpness=value | netteté du filtre. |
| filter-strength=value | la force du filtre de déblocage, entre 0 (aucun filtrage) et 100 (filtrage maximal). Une valeur de 0 désactive tout filtrage. Des valeurs plus élevées augmentent la force du filtrage appliqué après le décodage de l'image. Plus la valeur est élevée, plus l'image paraît lisse. Les valeurs typiques se situent généralement dans la plage de 20 à 50. |
| filter-type=value | type de filtre : 0 = simple, 1 = fort |
| image-hint=default, photo, picture, graph | l'indication sur le type d'image. |
| lossless=true, false | encode l'image sans aucune perte. |
| low-memory=true, false | réduit l'utilisation de la mémoire. |
| method=value | la méthode de compression à utiliser. Elle contrôle le compromis entre la vitesse d'encodage et la taille du fichier compressé ainsi que la qualité. Les valeurs possibles vont de 0 à 6. La valeur par défaut est 4. Lorsque des valeurs plus élevées sont utilisées, l'encodeur consacre plus de temps à examiner des possibilités d'encodage supplémentaires et à décider du gain de qualité. Une valeur plus faible peut entraîner un temps de traitement plus rapide au prix d'une taille de fichier plus grande et d'une qualité de compression inférieure. |
| preprocessing=value | À choisir parmi : 0=aucun, 1=segment-smooth, 2=tramage pseudo-aléatoire. |
| partitions=value | décodage progressif : choisir de 0 à 3. |
| partition-limit=value | Choisir 0 pour aucune dégradation de qualité et 100 pour une dégradation maximale. |
| pass=value | nombre maximal de passes pour atteindre la taille de compression ou le PSNR cible. |
| segments=value | À choisir de 1 à 4, le nombre maximal de segments à utiliser. |
| show-compressed=true, false | |
| sns-strength=value | l'amplitude du façonnage spatial du bruit. Le façonnage spatial du bruit (SNS) désigne un ensemble général d'algorithmes intégrés servant à décider quelle zone de l'image doit utiliser relativement moins de bits, et où il vaut mieux reporter ces bits. La plage possible va de 0 (algorithme désactivé) à 100 (effet maximal). La valeur par défaut est 80. |
| target-size=value | une taille cible (en octets) à essayer d'atteindre pour la sortie compressée. Le compresseur effectue plusieurs passes d'encodage partiel afin de s'approcher le plus possible de cette cible. |
| target-psnr=value | distorsion minimale souhaitée. |
| thread-level=value | active l'encodage multithread : 0 = désactivé, 1 = activé. |
| use-sharp-yuv=value | si nécessaire, utilise la conversion RGB->YUV nette (et lente). |