O conversor do ImageMagick não pode converter em webp

20

No Ubuntu 12.04, o ImageMagick parece não suportar o webp.

convert flyer.png flyer.webp

cria um arquivo png com extensão webp.

No link é indicado que o ImageMagick oferece suporte ao webp

convert --version Versão: ImageMagick 6.6.9-7 2012-08-17 Q16

Eu tenho os dois:

  • libwebp-dev - Compressão com perdas de imagens fotográficas digitais.
  • libwebp2 - Compressão com perda de imagens fotográficas digitais.

instalado.

Além disso, converter não pode decodificar um arquivo webp.

O que há de errado, e isso é um bug do Ubuntu?

    
por Janghou 06.02.2013 / 13:07

4 respostas

8

Corrigido em 16.04

Em 16,04 convert flyer.png flyer.webp funciona, embora webp seja necessário:

sudo apt-get install webp

Sem webp instalado, esta mensagem de erro será exibida:

convert: delegate failed '"cwebp" -quiet -q %Q "%i" -o "%o"' @ error/delegate.c/InvokeDelegate/1310.
    
por Janghou 19.06.2016 / 14:27
16

O pacote fonte do Ubuntu para imagemagick não declara uma dependência de compilação no libwebp-dev. Assim o imagemagick é construído sem suporte webp. Isso pode ser considerado um bug no Ubuntu.

Saída relevante do processo de criação:

checking for WEBP... 
checking webp/decode.h usability... no
checking webp/decode.h presence... no
checking for webp/decode.h... no
checking for WebPDecodeRGB in -lwebp... no
checking if WEBP package is complete... no

E quando libwebp-dev está instalado:

checking for WEBP... 
checking webp/decode.h usability... yes
checking webp/decode.h presence... yes
checking for webp/decode.h... yes
checking for WebPDecodeRGB in -lwebp... yes
checking if WEBP package is complete... yes

Se você quiser corrigir isso sozinho, poderá recriar o pacote e instalar sua versão:

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
    
por Dennis Kaarsemaker 06.02.2013 / 13:23
10

Nesse meio tempo, pode-se instalar:

$ sudo apt-get install webp

E use os comandos dwebp e cwebp para descompactar / compactar de / para o formato de arquivo webp.

    
por Dima 12.09.2013 / 17:39
1

O suporte a WebP também tem alguns problemas com a transparência antes do 6.8.3, então usei o 6.8.9-9 de 15.04 Vivid e o reportei para o 14.04 Trusty com suporte a webp. Use a seu próprio risco:

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

Caso você deseje repetir isso, os passos foram:

  • usando backportpackage imagemagick --source vivid --destination trusty --workdir=imagemagick-backport para buscar a versão do vivid e tar -xf para extrair o .deb .
  • Em seguida, use debian/control substituindo dpkg-dev (>= 1.17.6) dependency, adicionando dependências para libwebp-dev e substituindo Architecture: any por amd64 para evitar falhas de compilação.
  • Adicionando --with-webp em debian/rules , adicionando uma entrada de changelog com dch e usando debuild -S -sd para criar um pacote somente de origem.
  • Por fim, configure uma conta no launchpad e siga as instruções para compartilhar sua correção.
por James EJ 09.08.2015 / 04:42