webp formatı ve jpg formatı boyut ve kalite karşılaştırması
webp formatı ve jpg formatı boyut ve kalite karşılaştırması

Google firmasının desteklediği resim formatı webp ile hızlı açılan resimler oluşturmak çok kolay. Bu yazımızda linux sunucularda (ssh ile) bulunan resimlerimizi bir kaç kolay adımda webp formatına dönüştürmeyi anlatacağım. Bunun yanında yer avantajıda sağlayacaktır ancak hala bu resim formatının bazı dezavantajları bulunuyor. Örneğin bazı tarayıcılar hala webp resim formatını desteklemiyor. Yavaş da olsa bütün tarayıcılar bu resim formatına destek vermeye başladı ancak bunun bütün tarayıcı ve tarayıcı sürümlerinde yer alması zaman alacaktır. Bu dezavantajı ortadan kaldırmak için webp formatına çevirdiğimiz resimleri olduğu gibi bırakabiliriz ve webp formatını destekleyen tarayıcılarda webp sürümlerini, desteklemeyen tarayıcılarda da normal resimleri gösterebiliriz. Bu konuyu farklı bir yazıda ele alabiliriz, şuanki konumuz linux sunucularda sitemizde yada sunucumuzda yer alan resimleri webp formatına çevirmek.

Benzer içerikler

WebP resim formatı ile WordPress de %40-%50 daha hızlı olun

Daha önce bu konuya “WebP resim formatı ile WordPress de %40-%50 daha hızlı olun” yazısında sonlara doğru değinmiştim ancak yeni değiştirdiğim sunucuda bu işlem için gerekli olan uygulamayı kuramadım malesef ve bu gibi durumlarda daha kolay olan ayrı bir yöntemi daha ekleyeceğim, böylece ilk yöntemle kurulamayan program olursa 2. yöntemde farklı bir yolla işlemlerimizi yapabileceğiz.

Kullandığım linux dağıtımı Centos 8 ve yukarda paylaştığım linkte ki yöntemle gerekli olan kurulumu yapamamıştım ancak ne olur ne olmaz buraya ilk yöntem olarak ekleyeceğim ve bu işe yaramazsa diğer yönteme yönlendireceğim sizi.


1 – Linux sunucularda webp formatı için gerekli eklentileri kurma

Bize iki uygulama gerekli bunlar parallel ve libwebp-tools. Aşağıdaki komutu ssh panelinizden çalıştırarak kurulmasını sağlayın, eğer libwebp-tools kurulmazsa bu yöntemi atlayıp ikinci adıma geçin.

yum -y install parallel libwebp-tools

Bu kurulum başarılı olursa aşağıdaki komut ile resimlerimizi webp formatına çevirebiliriz ancak öncelikle formatlarını değiştirmek istediğiniz dizine girin. Alt klasörleride çevireceğini belirtelim bu yüzden girdiğiniz yol içinde bulunan her resmi (alt klasörlerde dahil) belirlediğiniz formata çevirecektir.

Örnek wordpress için resimlerin yer aldığı uploads klasörüne girmek için aşağıdaki gibi bir komu çalıştırmanız gerekiyor:

cd /home/kuazacom/public_html/wp-content/uploads

Resim klasörümüze girdikten sonra aşağıdaki komutları sırasıyla çalıştırdığımızda belirttiğimiz resim formatlarını webp formatıne gönüştürecektir: Sırasıyla komutlar jpg, jpeg, png resim formatlarını çevirecektir.

find . -name "*.jpg" | parallel -eta cwebp -q 85 {} -o {.}.jpg.webp
find . -name "*.jpeg" | parallel -eta cwebp -q 85 {} -o {.}.jpeg.webp
find . -name "*.png" | parallel -eta cwebp -q 85 {} -o {.}.png.webp

Eğer çalıştırdığımız ilk kod cwebp hatası verirse sonraki başlıktaki yöntemi uygulayın.

Kod yapısında göreceğiniz 85 kısmı dönüştürme sırasında resme uygulanacak optimizasyonun kalitesini belirtmektedir. 100 yaparsanız kayıpsız resimlerinizi webp formatına dönüştürecektir, bu sayı ne kadar düşerse resim kalitesi de o yönde düşecektir. Makul sayı 85-90 olacaktır. Bu şekilde fazla bir kayıp olmadan resimleri webp formatına çevirecek, boyut olarakda düşürecektir.


2 – Yöntem: libwebp-tools kaynak dosyaları ile dönüştürme yapma

Bu yöntemi üstdeki yöntem çalışmazsa diye ekliyorum, bende işe yaradığı için yeni konu açmak istedim çünkü herzaman lazım olacak bu anlatım. Öncelikle parallel uygulamasını kuralım.

yum -y install parallel

Kurulumdan sonra sunucumuza libwebp-tools kaynak kodlarını indirelim, libwebp-tools uygulamasının güncel versiyonlarını burdan görebilirsiniz. Bu isme göre bakıp en yüksek sürüm numarasına göre indireceğimiz dosyayı bulup url sini kopyalayalım: libwebp-1.1.0-linux-x86-64.tar.gz

Sonrasında aşağıdaki gibi indirme urlsini ssh panelimizden sunucumuza indirelim.

wget -c https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.1.0-linux-x86-64.tar.gz

İndirdiğimiz dosyayı açalım.

tar -xvf libwebp-1.1.0-linux-x86-64.tar.gz
cd libwebp-1.1.0-linux-x86-64/bin/
ls

Yukarıdaki işlemin ardından bize yardımcı uygulamaların isimlerini çıktı olarak ekranda verecek, bu yardımcı programlar ve yetenekleri:

  1. anim_diff – animasyon görüntüleri arasındaki farkı gösterme aracı.
  2. anim_dump – animasyon görüntüleri arasındaki farkı boşaltmak için bir araç.
  3. cwebp – webp kodlayıcı aracı.
  4. dwebp – webp kod çözücü aracı.
  5. gif2webp – GIF görüntülerini webp’ye dönüştürmek için bir araç.
  6. img2webp – bir dizi görüntüyü animasyonlu bir webp dosyasına dönüştürmek için araçlar.
  7. vwebp – webp dosya görüntüleyicisi.
  8. webpinfo – bir webp resim dosyası hakkındaki bilgileri görüntülemek için kullanılır.
  9. webpmux – webp çoklama aracı.

Biz libwebp uygulamasının cwebp yardımcı özelliğini kullanarak resimleri webp formatına dönüştüreceğiz. Bunun için ilk yöntemde verdiğim dönüştürme kodlarında biraz oynama yapacağız.

find . -name "*.jpg" | parallel -eta /root/libwebp-1.1.0-linux-x86-64/bin/cwebp -q 85 {} -o {.}.jpg.webp
find . -name "*.jpeg" | parallel -eta /root/libwebp-1.1.0-linux-x86-64/bin/cwebp -q 85 {} -o {.}.jpeg.webp
find . -name "*.png" | parallel -eta /root/libwebp-1.1.0-linux-x86-64/bin/cwebp -q 85 {} -o {.}.png.webp

Bu şekilde derleme programına direk yol göstererek resimlerin dönüştürülmesini sağlayacağız.


Tek resmi webp formatına dönüştürme

Eğer tek tek resimleri webp formatına dönüştürmek isterseniz aşağıdaki komut işinizi görecektir.

/root/libwebp-1.1.0-linux-x86-64/bin/cwebp -q 85 kuaza_guzel_resim.png -o kuaza_guzel_resim.png.webp

Yukarıdaki komutda göreceğiniz -q: dönüştürme kalitesini, -o: da dönüştürme sonrasında resmi ismini belirtmek için kullanılacaktır. Cwebp uygulamasında kullanabileceğiniz daha fazla parametreye buradaki resmi sayfadan ulaşabilirsiniz.


Parallel için dipnot

Parallel uygulaması 10 kullanımdan sonra uyarı verecektir, bu uyarıyı geçmek için çıkan uyarı ekranına önce parallel –citation yazıp onaylayın, sonrasında da will cite yazıp gönderin. Böylece daha fazla kullanım hakkınız olacak ve kullanmaya devam edebileceksiniz.


Yardımcı kaynaklar

CEVAP VER

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.