ImageMagick convert webp'ye dönüştürülemiyor


28

12.04 Ubuntu'da ImageMagick webp destekliyor gibi görünmüyor.

convert flyer.png flyer.webp

Webp uzantılı bir png dosyası oluşturur.

Açık webp docs ImageMagick destek webp yaptığı belirtilmektedir

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

Bu ikisi de yüklü:

  • libwebp-dev - Dijital fotoğraf görüntülerinin kayıplı sıkıştırılması.
  • libwebp2 - Dijital fotoğraf görüntülerinin kayıplı sıkıştırılması.

Ayrıca, dönüştürmek bir webp dosyasının kodunu çözemez.

Sorun nedir ve bu bir Ubuntu hatası mı?


1
İle desteklenen formatları listeleyebilirsiniz convert -list format. Sistemimde, aynı convertsürümde webp görünmüyor.
kronit

1
Thx, Launchpad'de bir hata raporu oluşturdum. O zaman hepimiz için sabitlenebilir. bugs.launchpad.net/ubuntu/+source/imagemagick/+bug/1117481
Janghou

Bu aynı zamanda debian 7 (wheezy) 'yi de etkiler, ancak böcekler için launchpad kullanmazlar.
earthmeLon

Yanıtlar:


21

16.04'te düzeltildi

16.04 yılında gerekli convert flyer.png flyer.webpolmasına rağmen webp, çalışır :

sudo apt-get install webp

webpYüklü olmadan , bu hata mesajı gösterilecektir:

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

1
Ne yazık ki webpImageMagick tarafından 7.0.8-27delege olarak tanınmıyor , bunun yerine yüklemelisinizlibwebp-dev
AbdelHady

20

İmagemagick için Ubuntu kaynak paketi libwebp-dev'e bir yapı bağımlılığı bildirmez. Böylece imagemagick web desteği olmadan inşa edilir. Bu Ubuntu'da bir hata olarak kabul edilebilir.

Derleme işleminden ilgili çıktı:

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

Ve libwebp-devLibwebp-dev'i kurun yüklendiğinde:

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

Bunu yalnızca kendiniz için düzeltmek istiyorsanız, paketi yeniden oluşturabilir ve sürümünüzü yükleyebilirsiniz:

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

Thx, bunu nasıl düzeltebiliriz?
Janghou

1
Yalnızca kendiniz için düzeltmek istiyorsanız, paketi yeniden oluşturabilirsiniz, cevabı bilgiyi içerecek şekilde düzenledim.
Dennis Kaarsemaker

@Janghou Şimdi Ubuntu hata listesinde. bugs.launchpad.net/ubuntu/+source/imagemagick/+bug/1117481
Meteor

14

Bu süre zarfında biri yükleyebilir:

$ sudo apt-get install webp

Ve kullanım dwebpve cwebp/ den webp dosya formatına sıkıştırmak / kompres için komutlar.


3
Bu ayrıca, imagemagick’in kimliğinin webp görüntüleri ile düzgün çalışmasını sağlar. Aşağıdaki hataları düzeltir: "dwebp" -pam "%i" -o "%o"' @ error/delegate.c/InvokeDelegate/1310. identify: unable to open image tanımla : temsilci başarısız / tmp / magick-510118LyrHZ5A5Sr ': Hatalı bir dosya ya da dizin yok @ error / blob.c / OpenBlob / 2712. tanımlayın: `/ tmp / magick-510118LyrHZ5A5Sr dosyasını açamıyor: Böyle bir dosya ya da dizin yok @ error / construcute.c / ReadImage / 540.
four43

1
Ne yazık ki webpImageMagick tarafından 7.0.8-27delege olarak tanınmıyor , bunun yerine yüklemelisinizlibwebp-dev
AbdelHady

2

WebP desteğinde ayrıca, 6.8.3'ten önce şeffaflık konusunda bazı sorunlar var, bu yüzden 15.04 Vivid'ten 6.8.9-9 kullandım ve web desteği ile 14.04'e kadar destekledim. Kullanım kendi sorumluluğunuzdadır:

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

Bunu tekrarlamak istemeniz durumunda adımlar şunlardı:

  • Kullanımı backportpackage imagemagick --source vivid --destination trusty --workdir=imagemagick-backporten canlı versiyonunu almak için ve tar -xfayıklamak için .deb.
  • Sonra içinde debian/controldeğiştirilmesi dpkg-dev (>= 1.17.6), bağımlılık için bağımlılıkları ekleme libwebp-devve değiştirme Architecture: any ile amd64inşa hatalarını önlemek için.
  • Ekleme --with-webpiçinde debian/rulesolan bir changelog giriş ekleyerek dchve kullanan debuild -S -sdbir kaynak sadece paket inşa etmek.
  • Sonunda, fırlatma panelinde bir hesap oluşturun ve düzeltmenizi paylaşmak için talimatlarını izleyin .
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.