42 votes

ImageMagick convert ne peut pas convertir en webp

Sur Ubuntu 12.04, ImageMagick ne semble pas prendre en charge le format webp.

convert flyer.png flyer.webp

Crée un fichier png avec une extension webp.

Sur la documentation webp, il est indiqué qu'ImageMagick prend en charge le format webp.

$ convert --version`
Version : ImageMagick 6.6.9-7 2012-08-17 Q16

J'ai ces deux éléments installés :

  • libwebp-dev - Compression avec pertes d'images photographiques numériques.
  • libwebp2 - Compression avec pertes d'images photographiques numériques.

De plus, convert ne peut pas décoder un fichier webp.

Qu'est-ce qui ne va pas et est-ce un bug d'Ubuntu ?

41voto

Janghou Points 4824

Réparé dans 16.04

Dans 16.04 convert flyer.png flyer.webp fonctionne, bien que webp soit nécessaire :

sudo apt-get install webp

Sans webp installé, ce message d'erreur s'affichera :

convert: delegate failed `"cwebp" -quiet -q %Q "%i" -o "%o"' @ error/delegate.c/InvokeDelegate/1310.

23voto

Clyde Points 3881

Le paquet source Ubuntu pour imagemagick ne déclare pas une dépendance de construction sur libwebp-dev. Ainsi, imagemagick est construit sans support webp. Cela pourrait être considéré comme un bogue dans Ubuntu.

Sortie pertinente du processus de construction :

vérification de WEBP...
vérification de l'utilisabilité de webp/decode.h... non
vérification de la présence de webp/decode.h... non
vérification de webp/decode.h... non
vérification de WebPDecodeRGB dans -lwebp... non
vérification si le package WEBP est complet... non

Et lorsque libwebp-dev est installé :

vérification de WEBP...
vérification de l'utilisabilité de webp/decode.h... oui
vérification de la présence de webp/decode.h... oui
vérification de webp/decode.h... oui
vérification de WebPDecodeRGB dans -lwebp... oui
vérification si le package WEBP est complet... oui

Si vous voulez corriger cela juste pour vous-même, vous pouvez reconstruire le package et installer votre version :

cd /tmp
mkdir imagemagick
cd imagemagick
sudo apt-get build-dep imagemagick
sudo apt-get install libwebp-dev devscripts
apt-get source imagemagick
cd imagemagick-*
debuild -uc -us
sudo dpkg -i ../*magick*.deb

18voto

pix0r Points 17854

En attendant, on peut installer :

$ sudo apt-get install webp

Et utiliser les commandes dwebp et cwebp pour décompresser/compresser depuis/vers le format de fichier webp.

2voto

James EJ Points 151

Le support de WebP a également quelques problèmes de transparence avant 6.8.3, j'ai donc utilisé la version 6.8.9-9 du 15.04 Vivid, et je l'ai rétroportée vers le 14.04 Trusty avec le support de webp. Utilisez à vos propres risques :

sudo add-apt-repository ppa:jamedjo/ppa
sudo apt-get update
sudo apt-get install imagemagick libmagickcore-6.q16-2

Si vous souhaitez répéter ceci, les étapes étaient :

  • Utilisation de backportpackage imagemagick --source vivid --destination trusty --workdir=imagemmagick-backport pour récupérer la version de vivid et tar -xf pour extraire le .deb.
  • Ensuite, dans debian/control remplacer la dépendance dpkg-dev (>= 1.17.6), ajouter les dépendances pour libwebp-dev et remplacer Architecture: any par amd64 pour éviter les échecs de compilation.
  • Ajout de --with-webp dans debian/rules, ajout d'une entrée de journal des modifications avec dch et utilisation de debuild -S -sd pour construire un package uniquement source.
  • Enfin, configurez un compte sur launchpad et suivez leurs instructions pour partager votre correctif.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X