¿Línea de comando convertir webp a jpg?

62

Estoy usando ubuntu 12.04. He instalado libwebp2ylibwebp-dev

Hasta ahora, no se ha encontrado ningún ejemplo en la red de convertir webp a jpg.

Algunos archivos webp pueden convertirse fácilmente usando imagemagick con comando

convert file.webp file.jpg

pero muchos archivos webp no se pueden convertir y dan error:

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.

--------adicional

Este es el archivo: http://www.filedropper.com/file_144

apasajja
fuente
¿Podría publicar algunos de los archivos que no se pueden convertir para que podamos probar?
terdon
¿Algún error cuando ImageMagick no puede convertir?
dartonw
@dartonw Error ha sido actualizado
apasajja
@terdon no tengo idea de cualquier alojamiento de imágenes de apoyo webp
apasajja
Es extraño que IM convierta algunos archivos webp y no otros. ¿Se pueden ver los que fallan en un navegador o editor de imágenes (tal vez están corruptos)? ¿Cómo instalaste IM? AFAIK, debe compilarse específicamente con soporte webp después de instalar libwebp [-devel].
dartonw

Respuestas:

85

Google ya proporcionó la herramienta para decodificar imágenes webp en el libwebppaquete, su archivo cargado funciona en Arch.

dwebp file.webp -o abc.png

Para la herramienta de codificación, verifique el cwebpcomando.

En Ubuntu puedes instalar las herramientas con:

sudo apt install webp

En RHEL / CentOS:

 yum install libwebp libwebp-tools

Y podría considerar usar esta herramienta en línea .

margarita
fuente
77
Desafortunadamente, dwebp solo convierte webp a png, pero no a jpg.
Rumpel
2
@rumpel thx, no se pudo abrir el .jpg, pero cuando puse .png funcionó.
Acuario Power
3
En 14.04 necesitaba instalar el paquete, webpno estaba disponible hasta que lo instalé. Estaba confundido porque había instalado todos los paquetes libwebpy libweb-dev.
Try TryAgain
1
Use dwebppara webp-> png, y luego convertpara png-> jpg. Usando tubería. dwebp 1.webp -o - | convert - 1.jpg
Steve
2
Para Windows, use el siguiente comando para% f en (* .webp) do dwebp.exe "% f" -o "% ~ nf.png"
Matija Grcic
29

ffmpeg puede hacer esto. Útil si ya tienes ffmpeg. No es necesario instalar otras herramientas.

Simplemente:

ffmpeg -i file.webp out.png
Rishav
fuente
Funciona, pero el png es 11 veces más grande.
RonJohn
18

Convierte todos los archivos webp dentro de un directorio

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

Nota: dwebp está en el paquete libwebp

Jeff McHale
fuente
55
Para Ubuntu 16.04 necesitaba instalarlo con sudo apt-get install webp.
PhoneixS
No sé si es una característica o un error, pero todos los archivos se guardarán como en file.webpg.pnglugar de simplementefile.png
Felix Rosén
Es una característica para la simplicidad ... Tengo un algoritmo de hash de imagen que cambia automáticamente el nombre de las imágenes, por lo que tenía la intención de cambiar el nombre de los archivos con eso.
Jeff McHale
3

Desde el directorio que contiene los webparchivos:

for x in *.webp; do ffmpeg -i $x $x.jpg; done
Byram Sewell
fuente
2
use en ${x%.webp}.jpglugar de $x.jpgeliminar webp en el nombre de archivo de destino (robado de stackoverflow.com/a/17844019/146745 )
andrej
1

Hay otra herramienta en línea disponible aquí que puede ayudarlo en esto:

pero si quieres una herramienta local, puedes usar esta:

y úsalo así:

1) chmod a+x webpconv

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

La estructura general es así:

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

Ejemplo) Para convertir una imagen .png a WebP con una calidad de 90, ingresaría:

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

y para convertir un archivo WebP a PNG:

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

Hojat Taheri
fuente
1

Encontré este método más rápido para mi necesidad de 1 vez.

  1. Tome una captura de pantalla con la imagen webp abierta en Chrome.
  2. Pegar en el programa de pintura.
  3. Recortar y guardar.
PRS
fuente
66
El interlocutor buscaba una solución de línea de comando ...
jasonwryan
1
Creo que podría hacerse como una línea de comando usando Shutter y tomando una captura de pantalla de una ventana sin decoraciones, todo en un script; podría ser divertido codificar :)
Aquarius Power
0

Para convertir múltiples jpg a webp, usando cwebp :

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

Acción personalizada de Thunar:

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

Acción personalizada de Thunar, moviendo imágenes webp a subcarpeta:

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

La configuración de calidad predeterminada de Cwebp es 75.

usuario8547
fuente
0

instale el paquete webp con sudo apt install webp, después de eso debería funcionar.

törzsmókus
fuente