JPEG, PNG, WebP ya da AVIF: hangisini saklamalısınız?
Aynı resim elimde dört ayrı biçimde var. Hangisini saklayayım, hangilerini sileyim?
Biçimden değil, resimden başlayın
Biçim tartışması, ilk yapılacak tartışma olarak neredeyse her zaman yanlıştır. Sonucu belirleyen, görüntünün içeriğidir. Fotoğraflar, tekrar eden piksel dizileri içermeyen yumuşak ve gürültülü geçişlerden oluşur. Ekran görüntüleri, logolar, diyagramlar ve piksel sanatı ise düz alanlardan, keskin kenarlardan ve az sayıda kesin renkten oluşur. Bu iki tür resim tümüyle farklı mekanizmalarla sıkışır ve birinde mükemmel olan bir biçim diğerinde genellikle vasat kalır.
Yani ilk soru “AVIF, JPEG'den daha mı iyi” değildir. İlk soru şudur: “bu bir fotoğraf mı yoksa bir grafik mi ve saydamlığa ihtiyacı var mı”. Buna yanıt verdiğinizde kısa liste genellikle bir ya da iki biçimden ibaret kalır.
Her biçim gerçekte ne yapıyor
| Biçim | Sıkıştırma | Saydamlık | Animasyon | En uygun kullanım |
|---|---|---|---|---|
| JPEG | Yalnızca kayıplı | Yok | Yok | Her yerde açılması gereken fotoğraflar |
| PNG | Yalnızca kayıpsız | Var, 8 bit alfa | Yok (APNG ayrı bir özelliktir) | Ekran görüntüleri, logolar, düz grafikler, birebir pikseller |
| WebP | Kayıplı ya da kayıpsız | Var, her iki kipte de | Var | Hem JPEG'in hem PNG'nin genel amaçlı yerine geçeni |
| AVIF | Kayıplı ya da kayıpsız | Var, 10 bit dahil | Var | Kodlama süresinin kabul edilebilir olduğu fotoğraflar |
Tablo, açıkça söylenmeye değer bir şeyi gizliyor: PNG, kalite kaydırıcısı indirilerek küçültülemez, çünkü kalite kaydırıcısı yoktur. Bir PNG iyileştiricisi dosyayı ayrıntı atarak değil, daha iyi bir tahmin filtresi ve daha iyi bir palet bularak küçültür. PNG olarak kaydedilmiş bir fotoğrafın, üzerinde hangi aracı çalıştırırsanız çalıştırın devasa kalmasının nedeni budur — biçimde, bilgi atmasına izin veren hiçbir şey yoktur.
Kayıplı ve kayıpsız birer kalite derecesi değildir
“Kayıpsız”ı “iyi”, “kayıplı”yı “kötü” diye okumak cazip gelir. Bunlar kalite dereceleri değil, farklı işlerdir. Kayıpsız, kodu çözülen piksellerin girene bit bit özdeş olması demektir; birinin içindeki metni okuyacağı bir arayüz ekran görüntüsünde olduğu gibi, asıl mesele piksellerse doğru seçim budur. Kayıplı ise kodlayıcının, gözün fark etmekte kötü olduğu ayrıntıları atmasına izin verilmesi demektir; on iki megapiksellik bir fotoğrafın birkaç yüz kilobayta sığabilmesinin tek nedeni de budur.
İşe yarar bir kural: tek bir yanlış pikseli fark edecekseniz kayıpsız bir biçim kullanın. Etmeyecekseniz, makul bir kalite ayarındaki kayıplı bir biçim çok daha küçük bir dosya üretir ve normal görüntüleme boyutunda farkı göremezsiniz.
WebP ve AVIF yerini nerede hak ediyor
Her iki yeni biçim de, 1992'de standartlaştırılan JPEG'de bulunmayan tahmin ve dönüşüm araçlarını kullanır. Pratikte bu, benzer bir görsel kaliteye daha küçük bir boyutta ulaşabildikleri anlamına gelir; ayrıca ikisi de saydamlığı destekler, ki JPEG bunu hiç yapamaz. WebP pragmatik olanıdır: hızlı kodlar ve hem JPEG'in hem PNG'nin yerini tek bir biçimle alır. AVIF ise iddialı olanıdır: AV1 video codec'inin kare içi araçlarını kullanır, daha yüksek bit derinliklerini destekler ve fotoğrafik içerikte dördü arasında genellikle en küçük dosyayı verir.
Bedeli kodlama süresidir. AVIF kodlaması bir arama problemidir ve kodlayıcı buna gerçek işlemci zamanı harcar. Bir tarayıcı sekmesinde, bir telefonda, o zaman sizin zamanınızdır — FileSlimmer'ın AVIF için, bekleme yokmuş gibi davranmak yerine dosya başına ilerleme göstermesinin nedeni budur. Tek bir kapak görselini dönüştürüyorsanız bu takas açıkça buna değer. Dört yüz tane dönüştürüyorsanız WebP'yi düşünün.
Eski bir dosyayı dönüştürmek eski hasarı geri almaz
En sık yaşanan hayal kırıklığı budur. Yıllar önce düşük kalitede kaydedilmiş bir JPEG'i alıp PNG'ye ya da kayıpsız WebP'ye dönüştürürseniz, bloklaşma ve halkalanma bozulmaları yeni dosyaya olduğu gibi kopyalanır. Kayıpsız, “girdiyle özdeş” demektir ve hasar girdinin piksellerine zaten işlenmiştir. Elinizde, tam olarak aynı kusurları taşıyan daha büyük bir dosya olur.
Kayıplı bir dosyayı başka bir kayıplı biçime dönüştürmek ikinci, ayrı bir sıkıştırma geçişidir; dolayısıyla üstüne kendi bozulmalarını ekleyebilir. Seçme şansınız varsa, bir sıkıştırıcıdan çoktan geçmiş bir kopyadan değil, hâlâ elinizde bulunan en orijinal dosyadan dönüştürün: kamera orijinali ya da tasarım aracından alınan dışa aktarma.
Gerçekten işe yarayan bir kısa liste
- Fotoğraf, eski yazılımlar dahil her şeyde açılması gerekiyor: JPEG'i saklayın.
- Fotoğraf, kendi siteniz ya da uygulamanız için ve onu neyin okuyacağını siz denetliyorsunuz: WebP, kodlama süresini harcayabiliyorsanız AVIF.
- Ekran görüntüsü, logo, diyagram, grafik ya da piksellerinde metin bulunan her şey: PNG; boyut evrensel destekten daha önemliyse kayıpsız WebP.
- Saydam arka plan gerektiren her şey: PNG, WebP ya da AVIF. JPEG değil.
- Sonradan yeniden düzenleyebileceğiniz bir arşiv kopyası: orijinal dosya her neyse onu saklayın ve sıkıştırılmış her sürümü tek kullanımlık sayın.
Bu karşılaştırmanın size söylemedikleri
Burada bir boyut sıralaması yok ve bu bilinçli. Yayımlanan karşılaştırmalar belirli bir görüntü kümesi üzerinde, belirli kodlayıcı sürümleri ve ayarlarıyla ölçülür; bunlardan biri değiştiğinde sonuç da kayar. Kendi resminizi tarif eden tek test, kendi resminizdir. Aynı kaynağı, kabul edilebilir bulduğunuz bir kalite ayarında her adaya birer kez dönüştürün, sonra iki sayıyı ve iki görüntüyü yan yana karşılaştırın.
Destek de zamanla değişir. Bir arşivi daha yeni bir biçime taşımadan önce, dosyaları neyin açması gerektiğine bakın: bir tarayıcı, bir telefon galerisi, bir yazıcı, bir müşterinin on yıllık masaüstü uygulaması. En iyi biçim, o listedeki her şeyin gerçekten okuyabildiği en küçük biçimdir.
Bunun için araçlar
Kaynaklar
- ITU-T T.81 — the JPEG standard
- W3C — Portable Network Graphics (PNG) Specification (Third Edition)
- Google — WebP container and bitstream documentation
- Alliance for Open Media — AV1 Image File Format (AVIF)