La ligne de commande convertit webp en jpg?


62

J'utilise Ubuntu 12.04. J'ai installé libwebp2&libwebp-dev

Jusqu'à présent, aucun exemple trouvé sur le net de conversion de webp en jpg.

Certains fichiers webp peuvent facilement être convertis en utilisant imagemagick avec la commande

convert file.webp file.jpg

mais beaucoup de fichiers webp ne peuvent pas être convertis et donnent une erreur:

convert: no decode delegate for this image format `file.webp' @ error/constitute.c/ReadImage/532.
convert: missing an image filename `file.jpg' @ error/convert.c/ConvertImageCommand/3011.

--------ajoutée

Ceci est le fichier: http://www.filedropper.com/file_144


Pourriez-vous poster certains des fichiers qui ne peuvent pas être convertis afin que nous puissions essayer?
terdon

Des erreurs lorsque ImageMagick ne parvient pas à convertir?
Dartonw

@dartonw Erreur a été mis à jour
apasajja

@terdon Je n'ai aucune idée de tout support d'hébergement d'image webp
apasajja

Étrange que la messagerie instantanée convertisse certains fichiers webp et pas d’autres. Ceux qui échouent peuvent-ils être visualisés dans un navigateur ou un éditeur d'image (ils sont peut-être corrompus)? Comment avez-vous installé la messagerie instantanée? Si je comprends bien, il doit être spécifiquement compilé avec le support Webp après l’installation de libwebp [-devel].
mardi

Réponses:


85

Google a déjà fourni l'outil permettant de décoder les images webp dans le libwebppackage, votre fichier téléchargé fonctionne sur Arch.

dwebp file.webp -o abc.png

Pour l'outil de codage, vérifiez la cwebpcommande.

Dans Ubuntu, vous pouvez installer les outils avec:

sudo apt install webp

Sur RHEL / CentOS:

 yum install libwebp libwebp-tools

Et vous pourriez envisager d' utiliser cet outil en ligne .


7
Malheureusement, dwebp ne convertit que webp en png, mais pas en jpg.
Rumpel

2
@rumpel thx, le fichier .jpg n'a pas été ouvert, mais lorsque j'ai mis le fichier .png, cela a fonctionné!
Aquarius Power

3
Dans 14.04, j'avais besoin d'installer le paquet, webpil n'était pas disponible avant que je ne l'installe. J'étais confus parce que j'avais installé tous les paquets libwebpet libweb-dev.
TryTryAgain

1
Utilisez dwebppour webp-> png, puis convertpour png-> jpg. À l'aide d'un tuyau. dwebp 1.webp -o - | convert - 1.jpg
Steve

2
Pour Windows, utilisez la commande suivante pour% f in (* .webp) do dwebp.exe "% f" -o "% ~ nf.png"
Matija Grcic

29

ffmpeg peut le faire. Utile si vous avez déjà ffmpeg. Pas besoin d'installer d'autres outils.

Simplement:

ffmpeg -i file.webp out.png

Cela fonctionne, mais le png est 11x plus grand.
RonJohn le

18

Convertir tous les fichiers webp dans un répertoire

find ./ -name "*.webp" -exec dwebp {} -o {}.png \;

Remarque: dwebp est dans le paquet libwebp


5
Pour Ubuntu 16.04, je devais l'installer avec sudo apt-get install webp.
PhoneixS

Je ne sais pas s’il s’agit d’une fonctionnalité ou d’un bogue, mais tous les fichiers seront enregistrés au file.webpg.pnglieu de simplementfile.png
Felix Rosén

C'est une fonctionnalité pour plus de simplicité ... J'ai un algorithme de hachage d'image qui renomme automatiquement les images, j'ai donc l'intention de renommer les fichiers en utilisant cet algorithme.
Jeff McHale


1

Il existe un autre outil en ligne disponible ici qui peut vous aider:

mais si vous voulez un outil local, vous pouvez utiliser celui-ci:

et l'utiliser comme ça:

1) chmod a+x webpconv

2) ./webpconv -format PNG <YOUR_WEBP_FILE>.webp

La structure générale est comme ceci:

webpconv [-output_dir dir] [-format format] [-quality quality] input_file(s)

Exemple) Pour convertir une image .png en WebP avec une qualité de 90, vous devez entrer:

webpconv -quality 90 /home/user/image_name.png

et pour convertir un fichier WebP en PNG:

webpconv -format PNG /home/user/image_name.webp


1

J'ai trouvé cette méthode plus rapide pour mon besoin 1 fois.

  1. Prenez une capture d'écran avec l'image webp ouverte en chrome.
  2. Coller dans le programme de peinture.
  3. Recadrer et économiser.

6
Le questionneur cherchait une solution de ligne de commande ...
jasonwryan

1
Je pense que cela pourrait être fait en tant que ligne de commande en utilisant Shutter et en prenant une capture d'écran d'une fenêtre sans décorations de fenêtres, le tout dans un script; ça pourrait être amusant de coder :)
Aquarius Power

0

Pour convertir plusieurs jpg en webp à l’aide de cwebp :

find ./ -name "*.jpg" -exec cwebp -q 70 {} -o {}.webp \

Action personnalisée thunar:

for file in %F; do cwebp "$file" -o "${file%%.*}".webp; done

Thunar Custom Action, déplacement des images webp dans un sous-dossier:

mkdir %d/webp && cd %d; for file in %N; do cwebp "$file" -o "webp/${file%%.*}".webp; done

Le paramètre de qualité par défaut de Cwebp est 75.


0

installez le paquet webp avec sudo apt install webp, après cela cela devrait fonctionner.


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.