cWebp

Nom

cwebp : compresser un fichier image au format WebP

Synopsis

cwebp [options] input_file -o output_file.webp

Description

cwebp compresse une image au format WebP. Le format d'entrée peut être : Échantillons PNG, JPEG, TIFF, WebP ou Y'CbCr bruts. Remarque: Les fichiers PNG et WebP animés ne sont pas acceptés.

Options

Les options de base sont les suivantes:

-o string
Indiquez le nom du fichier WebP de sortie. Si cette valeur n'est pas spécifiée, cwebp exécutera mais ne fournissent que des statistiques. Avec "-" comme nom de sortie, la sortie sera dirigée vers "stdout".
-- string
Spécifiez explicitement le fichier d'entrée. Cette option est utile si l'entrée le fichier commence par un tiret par exemple. Cette option doit apparaître comme last. Toute autre option définie ultérieurement sera ignorée.
-h, -help
Un bref résumé de l'utilisation.
-H, -longhelp
Résumé de toutes les options possibles.
-version
Imprimez le numéro de version (au format major.minor.revision) et quittez l'application.
-lossless
Encodez l'image sans aucune perte. Pour les images dont la zone est totalement transparente, les valeurs de pixels invisibles (R/G/B ou Y/U/V) ne sont conservées que si L'option -exact est utilisée.
-near_lossless int
Spécifiez le niveau de prétraitement des images quasiment sans perte. Cette option ajuste pour faciliter la compression, mais avec un impact minimal sur l'image qualité. Il déclenche automatiquement le mode de compression sans perte. La plage va de 0 (prétraitement maximal) à 100 (aucun prétraitement, la par défaut). La valeur habituelle est d'environ 60. Notez que l'opérateur -q 100 génère des pertes. peut parfois donner de meilleurs résultats.
-q float

Spécifiez le facteur de compression pour les canaux RVB compris entre 0 et 100. La valeur par défaut est 75.

En cas de compression avec pertes (option par défaut), un facteur plus faible produit une compression fichier de qualité inférieure. La meilleure qualité est obtenue en utilisant une valeur de 100

En cas de compression sans perte (spécifiée par l'option -lossless), une Un petit facteur permet d'accélérer la compression, mais génère un fichier plus volumineux. La compression maximale est atteinte en utilisant la valeur 100.

-z int

Activer le mode de compression lossless en spécifiant un niveau compris entre 0 et 9, le niveau 0 étant le plus rapide, 9 étant le plus lent. Mode rapide génère des fichiers plus volumineux que des fichiers plus lents. -z 6 est un bon choix par défaut. Cette option est en fait un raccourci vers certains paramètres prédéfinis de qualité et de la méthode. Si vous utilisez par la suite les options -q ou -m, invalider l'effet de cette option.

-alpha_q int

Spécifiez le facteur de compression alpha compris entre 0 et 100 La compression sans perte de la valeur alpha est obtenue en utilisant la valeur 100, tandis que les valeurs inférieures entraînent une compression avec pertes. La valeur par défaut est 100.

-preset string

Spécifiez un ensemble de paramètres prédéfinis pour répondre à un type particulier de à l'aide de ressources de référence. Les valeurs possibles sont: default, photo, picture, drawing, icon et text.

Étant donné que -preset remplace les autres paramètres (sauf la règle -q 1), cette option doit, de préférence, apparaître en premier dans l'ordre .

-m int

Spécifiez la méthode de compression à utiliser. Ce paramètre contrôle l'échange entre la vitesse d'encodage et la taille et la qualité du fichier compressé. Les valeurs possibles sont comprises entre 0 et 6. La valeur par défaut est 4. Si plus élevé sont utilisées, l'encodeur passe plus de temps à inspecter les possibilités d'encodage et de décider du gain de qualité. Une valeur inférieure peut permettent d'accélérer le temps de traitement, au détriment d'une taille de fichier plus importante et de moins bonne qualité de compression.

-crop x_position y_position width height

Recadrer la source en un rectangle avec un coin supérieur gauche aux coordonnées (x_position, y_position) et la taille width x height. Ce recadrage doit être entièrement contenue dans le rectangle source. Remarque: Le recadrage est appliquée avant tout scaling.

-resize width height

Redimensionnez la source en un rectangle de width x height. Si l'un des des paramètres de largeur ou de hauteur (mais pas les deux) est 0, la valeur sera calculé en préservant les proportions. Remarque: Le scaling est appliqué après le recadrage.

-mt

Si possible, utilisez le traitement multithread pour l'encodage.

-low_memory

Réduire l'utilisation de la mémoire pour l'encodage avec pertes en économisant quatre fois le format taille (généralement). Cela ralentira l'encodage et la sortie de taille et de distorsion légèrement différentes. Cet indicateur n'est valable que pour à partir de la méthode 3. Il est désactivé par défaut. Notez que cette option n'est pas activée. aura des effets secondaires sur le flux de bits: il force certains comme le nombre de partitions (forcée sur 1). Notez qu'une option un rapport détaillé sur la taille du flux de bits est imprimé par cwebp lorsque vous utilisez cette .

Options avec perte

Ces options ne sont efficaces que lors de l'encodage avec pertes (valeur par défaut, ou sans la version alpha).

-size int
Spécifiez une taille cible (en octets) à essayer d'atteindre pour le fichier compressé de sortie. Le compresseur effectue plusieurs passes d'encodage partiel dans pour vous rapprocher le plus possible de cet objectif. Si -size et -psnr sont utilisées, la valeur -size prévaudra.
-psnr float
Spécifiez un paramètre PSNR cible (en dB) à atteindre pour la sortie compressée. Le compresseur effectue plusieurs passages d'encodage partiel afin d'obtenir le plus près possible de cet objectif. Si vous utilisez à la fois -size et -psnr, La valeur -size prévaudra.
-pass int
Définir le nombre maximal de cartes à utiliser lors de la dichotomie liée aux options -size ou -psnr. La valeur maximale est 10, la valeur par défaut est 1. Options IF -size ou -psnr ont été utilisés, mais -pass n'a pas été spécifié (valeur par défaut) sur "6" seront utilisées. Si -pass est spécifié, mais que ni -size, ni -psnr, une valeur PSNR cible de 40 dB sera utilisée.
-af
Active le filtrage automatique. Cet algorithme consacrera plus de temps à l'optimisation l'intensité du filtrage pour obtenir un résultat bien équilibré.
-jpeg_like
Modifier le mappage des paramètres internes pour qu'il corresponde mieux à la taille attendue Compression JPEG. Cet indicateur produira généralement un fichier de sortie de est semblable à son équivalent JPEG (pour le même paramètre -q), mais avec moins de distorsion visuelle.

Options avancées :

-f int
Spécifiez l'intensité du filtre de déblocage. Elle doit être comprise entre 0 (aucun filtrage). et 100 (filtrage maximal). La valeur 0 désactive tout filtrage. Une valeur plus élevée augmente l'intensité du processus de filtrage appliqué après avoir décodé l'image. Plus la valeur est élevée, plus l'image est fluide apparaît. Les valeurs habituelles sont généralement comprises entre 20 et 50.
-sharpness int
Spécifiez le niveau de netteté du filtrage (le cas échéant). Plage : 0 (plus net) à 7 (le moins net). La valeur par défaut est 0.
-strong
Utilisez un filtrage fort (si le filtrage est utilisé à l'aide de -f ). Le filtrage avancé est activé par défaut.
-nostrong
Désactivez le filtrage fort (si le filtrage est utilisé à l'aide du -f). option) et utilisez un filtrage simple à la place.
-sharp_yuv
Si nécessaire, utilisez une conversion RVB->YUV plus précise et plus nette. Notez que cette le processus est plus lent que le mode par défaut Conversion RVB->YUV.
-sns int
Spécifiez l'amplitude de mise en forme du bruit spatial. Mise en forme du bruit spatial (ou "sns") désigne un ensemble général d'algorithmes intégrés utilisé pour décider quelle zone de l'image doit utiliser relativement moins de bits, et où d’autre pour mieux transférer ces bits. La plage possible va de 0 (l'algorithme est désactivé) à 100 (effet maximal). La valeur par défaut est 50.
-segments int
Modifier le nombre de partitions à utiliser lors de la segmentation du réseau algorithme. Les segments doivent être compris entre 1 et 4. La valeur par défaut est 4. Cette option n'a aucun effet pour les méthodes 3 et ultérieures, sauf si -low_memory est utilisés.
-partition_limit int
Dégradez la qualité en limitant le nombre de bits utilisés par certains macroblocs. La plage est comprise entre 0 (aucune dégradation, la valeur par défaut) et 100 (dégradation complète). Les valeurs utiles se situent généralement autour de 30 à 70 pour les images de taille moyenne. Dans format VP8, la partition dite de contrôle a une limite de 512 Ko et est utilisé pour stocker les informations suivantes: détermine si le macroblock est le segment auquel il appartient, qu'il soit codé en 4x4 ou le mode "intra 16x16", et enfin les modes de prédiction à utiliser pour chacun des sous-blocs. Pour une très grande image, la taille 512 Ko ne laisse de la place que quelques bits par Macroblock 16 x 16. Le minimum absolu est de 4 bits par macrobloc. Passer, le segment et le mode peuvent utiliser la quasi-totalité de ces 4 bits (même si le cas est peu probable), ce qui pose problème pour les très grandes images. La Le facteur partition_limit contrôle la fréquence à laquelle le mode le plus coûteux (intra 4x4). Cette valeur est utile si la limite est atteinte (512 000). et le message suivant s'affiche: Code d'erreur: 6 (PARTITION0_OVERFLOW: la partition n° 0 est trop grande pour s'adapter à 512 ko.) Si vous utilisez -partition_limit ne suffit pas pour respecter la contrainte de 512 000, utilisent moins de segments afin d'économiser plus de bits d'en-tête par macrobloc. Voir l'option -segments. Notez que les options -m et -q influencent également les décisions de l'encodeur et sa capacité à atteindre cette limite.

Options de journalisation

Ces options contrôlent le niveau de sortie:

-v
Imprimer des informations supplémentaires (en particulier le temps d'encodage).
-print_psnr
Calculer et générer le rapport PSNR moyen
-print_ssim
Calculer la métrique de similarité structurelle (SSIM) moyenne et générer un rapport : voir https://en.wikipedia.org/wiki/SSIM pour en savoir plus).
-print_lsim
Calculer et signaler la métrique de similarité locale (somme de l'erreur la plus faible parmi les pixels voisins colocalisés).
-progress
Signale la progression de l'encodage en pourcentage.
-quiet
N'imprime rien.
-short
N'imprimer que de brèves informations (taille du fichier de sortie et PSNR) à des fins de test finalités.
-map int
Générer une carte ASCII supplémentaire des informations d'encodage Valeurs de carte possibles compris entre 1 et 6. Elle ne sert qu'au débogage.

Options supplémentaires

Les options les plus avancées sont les suivantes:

-s width height
Indique que le fichier d'entrée est constitué d'échantillons de Y'CbCr bruts. conformément à la recommandation ITU-R BT.601, au format linéaire 4:2:0. La le plan du luma a une taille de width x height.
-pre int
Spécifiez des étapes de prétraitement. La valeur 2 déclenche Traçage pseudo-aléatoire dépendant de la qualité lors de la conversion RVBA->YUVA (compression avec perte uniquement).
-alpha_filter string
Spécifiez la méthode de filtrage prédictif pour le plan alpha. L'une des valeurs suivantes : none, fast ou best, dans un ordre croissant de complexité et de lenteur. La valeur par défaut est fast. En interne, le filtrage alpha est effectué prédictions possibles (aucun, horizontal, vertical, dégradé). best essaie chaque mode l'un après l'autre, puis choisit celui la taille de l'image. Le mode fast tente simplement de formuler une supposition a priori, sans en testant tous les modes.
-alpha_method int
Spécifiez l'algorithme utilisé pour la compression alpha: 0 ou 1. Algorithme 0 indique qu'il n'y a aucune compression, 1 utilise un format sans perte WebP pour la compression. La valeur par défaut est 1.
-exact
Conservez les valeurs RVB dans la zone transparente. Cette option est désactivée par défaut compressibilité.
-blend_alpha int
Cette option fusionne le canal alpha (le cas échéant) avec la source en utilisant la couleur d'arrière-plan spécifiée en hexadécimal comme 0xrrggbb. La couche alpha Le canal est ensuite réinitialisé sur la valeur opaque 255.
-noalpha
Si vous utilisez cette option, la version alpha sera supprimée.
-hint string
Spécifiez l'indication sur le type d'image d'entrée. Les valeurs possibles sont: photo, picture ou graph.
-metadata string

Une liste de métadonnées séparées par une virgule à copier de l'entrée à la sortie si à l'heure actuelle. Valeurs valides: all, none, exif, icc, xmp. La valeur par défaut est none.

Notez que chaque format d'entrée n'est pas forcément compatible avec toutes les combinaisons.

-noasm

Désactivez toutes les optimisations d'assemblage.

Bugs

Exemples

cwebp -q 50 -lossless picture.png -o picture_lossless.webp
cwebp -q 70 picture_with_alpha.png -o picture_with_alpha.webp
cwebp -sns 70 -f 50 -size 60000 picture.png -o picture.webp
cwebp -o picture.webp -- ---picture.png

Auteurs

cwebp fait partie de libwebp et a été écrit par l'équipe WebP. L'arborescence source la plus récente est disponible sur la page https://chromium.googlesource.com/webm/libwebp/

Cette page de manuel a été rédigée pour le projet Debian (et peut être utilisée par autres).