JPEG, PNG, WebP eller AVIF: hvilket skal du beholde?
Jeg har det samme billede i fire formater. Hvilket beholder jeg, og hvilke sletter jeg?
Begynd med billedet, ikke med formatet
Diskussionen om formater er næsten altid den forkerte at tage først. Det, der afgør resultatet, er billedets indhold. Fotografier består af bløde, støjede overgange uden gentagne rækker af ens pixels. Skærmbilleder, logoer, diagrammer og pixelkunst består af flade flader, hårde kanter og et lille antal præcise farver. De to slags billeder komprimeres efter helt forskellige principper, og et format, der er fremragende til det ene, er som regel middelmådigt til det andet.
Det første spørgsmål er altså ikke "er AVIF bedre end JPEG". Det er "er det her et fotografi eller en grafik, og har det brug for gennemsigtighed". Når du har svaret på det, er kandidatlisten som regel kun et format eller to lang.
Hvad hvert format egentlig gør
| Format | Komprimering | Gennemsigtighed | Animation | Passer bedst til |
|---|---|---|---|---|
| JPEG | Kun tabsgivende | Nej | Nej | Fotografier der skal kunne åbnes overalt |
| PNG | Kun tabsfri | Ja, 8-bit alfa | Nej (APNG er en separat funktion) | Skærmbilleder, logoer, flad grafik, præcise pixels |
| WebP | Tabsgivende eller tabsfri | Ja, i begge tilstande | Ja | En generel erstatning for både JPEG og PNG |
| AVIF | Tabsgivende eller tabsfri | Ja, også 10-bit | Ja | Fotografier hvor kodetiden er acceptabel |
Tabellen skjuler én ting, der er værd at sige højt: PNG kan ikke gøres mindre ved at skrue ned for en kvalitetsskyder, for formatet har ingen. En PNG-optimering reducerer filen ved at finde et bedre forudsigelsesfilter og en bedre palet, ikke ved at kassere detaljer. Derfor bliver et fotografi gemt som PNG ved med at være enormt, uanset hvilket værktøj du kører det igennem — der er intet i formatet, der lader det smide information væk.
Tabsgivende og tabsfri er ikke kvalitetskarakterer
Det er fristende at læse "tabsfri" som "god" og "tabsgivende" som "dårlig". De er ikke kvalitetskarakterer, de er forskellige opgaver. Tabsfri betyder, at de afkodede pixels er bit for bit identiske med dem, der gik ind; det er det rigtige valg, når pixelsene er selve pointen, som i et skærmbillede af en brugerflade, som nogen skal læse tekst i. Tabsgivende betyder, at encoderen må kassere detaljer, øjet er dårligt til at opdage, og det er den eneste grund til, at et fotografi på tolv megapixel overhovedet kan være i et par hundrede kilobytes.
En brugbar tommelfingerregel: ville du bemærke en enkelt forkert pixel, så brug et tabsfrit format. Ville du ikke, så giver et tabsgivende format ved en fornuftig kvalitetsindstilling en langt mindre fil, og du vil ikke kunne se forskel ved normal visningsstørrelse.
Hvor WebP og AVIF gør sig fortjent
Begge de nyere formater bruger forudsigelses- og transformationsværktøjer, som JPEG, standardiseret i 1992, ikke har. I praksis betyder det, at de kan nå en tilsvarende visuel kvalitet ved en mindre størrelse, og begge håndterer gennemsigtighed, som JPEG slet ikke kan. WebP er det pragmatiske valg: det koder hurtigt, og det erstatter både JPEG og PNG med ét format. AVIF er det ambitiøse: det bruger AV1-videocodecets intraframe-værktøjer, understøtter højere bitdybder og giver generelt den mindste af de fire filer for fotografisk indhold.
Prisen er kodetid. AVIF-kodning er et søgeproblem, og encoderen bruger reel CPU-tid på det. I en browserfane, på en telefon, er den tid din — det er derfor, FileSlimmer viser fremdrift per fil for AVIF frem for at lade som om ventetiden ikke findes. Konverterer du ét enkelt hovedbillede, er den handel oplagt værd at tage. Konverterer du fire hundrede, så overvej WebP.
At konvertere en gammel fil ophæver ikke gammel skade
Det er den absolut mest udbredte skuffelse. Tager du en JPEG, der blev gemt i lav kvalitet for år tilbage, og konverterer den til PNG eller tabsfri WebP, bliver blok- og ringartefakterne kopieret trofast med over i den nye fil. Tabsfri betyder "identisk med det, der kom ind", og det, der kom ind, havde allerede skaden bagt ind i sine pixels. Du får en større fil med præcis de samme fejl.
At konvertere en tabsgivende fil til et andet tabsgivende format er en anden, selvstændig komprimering, så den kan lægge sine egne artefakter oven i. Har du valget, så konverter fra den mest oprindelige fil, du stadig har — kameraets original, eksporten fra designværktøjet — frem for fra en kopi, der allerede har været gennem en komprimering.
En kandidatliste du kan bruge til noget
- Fotografi, skal kunne åbnes i hvad som helst, også gammel software: behold JPEG.
- Fotografi, til dit eget site eller din egen app, hvor du bestemmer, hvad der læser det: WebP, eller AVIF hvis du kan afsætte kodetiden.
- Skærmbillede, logo, diagram, graf eller andet med tekst i pixelsene: PNG, eller tabsfri WebP hvis størrelsen betyder mere end universel understøttelse.
- Alt der har brug for en gennemsigtig baggrund: PNG, WebP eller AVIF. Ikke JPEG.
- En arkivkopi du måske skal redigere senere: behold originalfilen, hvad den end er, og betragt enhver komprimeret version som noget, der kan smides væk.
Hvad denne sammenligning ikke fortæller dig
Der er ingen rangliste over størrelser her, og det er med vilje. Offentliggjorte sammenligninger er målt på et bestemt sæt billeder, med bestemte encoderversioner og indstillinger, og resultatet flytter sig, når blot én af de ting ændrer sig. Dit eget billede er den eneste test, der beskriver dit eget billede. Konverter den samme kilde én gang til hver kandidat ved en kvalitetsindstilling, du finder acceptabel, og sammenlign så de to tal og de to billeder side om side.
Understøttelsen ændrer sig også over tid. Før du binder et helt billedarkiv til et nyere format, så undersøg, hvad der skal kunne åbne filerne: en browser, et galleri på en telefon, en printer, en kundes ti år gamle skrivebordsprogram. Det bedste format er det mindste, som alt på den liste faktisk kan læse.
Værktøjer til dette
Kilder
- 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)