PNG-formatet ska vara ett förlustfritt format, men när du sparar en bild som en PNG-fil blir du ombedd att välj en komprimeringsnivå. Betyder det att PNG-formatet egentligen inte är förlustfritt trots allt? Dagens SuperUser Q & A-tjänst hjälper till med att rensa förvirringen för en nyfiken läsare.
Dagens Frågor och svar sessions kommer till vår tjänst med SuperUser-en indelning av Stack Exchange, en community-driven gruppering av Q & A-webbplatser.
SuperUser-läsaren pkout vill veta om kvaliteten på en PNG-bild påverkas av den valda kompressionsnivån:
Som jag förstår, använder PNG-filer förlustfri komprimering. Men när jag använder en bildredigerare som Gimp och försöker spara en bild som en PNG-fil, frågar den om en komprimeringsnivå som sträcker sig mellan 0 och 9.
Om den har en komprimeringsparameter som påverkar den visuella precisionen hos Den komprimerade bilden, hur är PNG förlustfri då? Kan någon förklara det här för mig? Får jag bara förlustfritt beteende när jag ställer komprimeringsnivån till 9?
Finns det en skillnad i bildens kvalitet beroende på vilken komprimeringsnivå du väljer?
SuperUser-bidragsgivare LordNeckbeard och jjlin har svaret för oss. Först upp, LordNeckbeard:
PNG är komprimerad, men Lossless
Kompressionsnivån är ett kompromiss mellan filstorlek och kodning / avkodningshastighet. För att överdriva allmänt, har även icke-bildformat som FLAC liknande begrepp.
Olika komprimeringsnivåer, samma avkodad utgång
Även om filstorlekarna är olika beroende på de olika komprimeringsnivåerna kommer den faktiska avkodade utsignalen att vara identiska. Du kan jämföra MD5-hackarna i de avkodade utgångarna med ffmpeg med MD5-muxern. Detta visar bäst med några exempel.
Skapa PNG-filer
- Som standard använder ffmpeg -compression_level 100 för PNG-utdata.
- Ett snabbt, slarvtest visade att 100 (den högsta komprimeringsnivån) tog ungefär tre gånger längre att koda och fem gånger längre att avkoda än 0 (den lägsta komprimeringsnivån) i det här exemplet.
Jämför filstorlek
Avkod PNG-filerna och visa MD5 Hashes
Eftersom båda hasorna är designade kan vara säker på att de avkodade utsignalerna (de okomprimerade råfilerna) är exakt samma.
Följd av svaret från jjlin:
PNG är förlustfri. GIMP använder sannolikt inte det bästa valet av formulering i det här fallet.
Tänk på det som komprimeringskvalitet eller komprimeringsnivå . Med lägre komprimering får du en större fil, men det tar mindre tid att producera, men med högre komprimering får du en mindre fil som tar längre tid att producera.
Vanligtvis får du avtagande avkastning, dvs inte lika mycket minskning av storleken jämfört med den ökade tiden det tar när man går upp till högsta kompressionsnivåer, men det är upp till dig.
Har något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa mer svar från andra tech-savvy Stack Exchange-användare? Kolla in den fullständiga diskussionsgängan här.
Inte menat att vara en hatefest på Internet Explorer-i själva verket, sedan IE 9, har de fortsatt att förbättra prestanda, lägga till nya funktioner och gör det vanligtvis kompatibelt. I början var det IE och det var Bra? Vi har alla varit så vana vid att tänka på Internet Explorer som den långsamma buggy-webbläsaren som ligger bakom tiden, men det var inte alltid så, i själva verket långt tillbaka när Internet Explorer pioneered många innovationer som gjorde webben vad Det är idag.
Hur kan du se DVD-skivor bättre på din HDTV?
ÄVen om vi lever i åldern på HD-video betyder det inte att vi alla har uppgraderat våra gamla DVD-skivor till HD-innehåll. Låt oss titta på hur du kan förbättra utseendet på standarddefinitionsinnehållet på din HD-TV. Kära hur-till-geek, Jag gick äntligen för att få en HDTV komplett med en ny kabelbox med HD-kapacitet och , baserat på recensioner och artiklar som jag läste på HTG, inte mindre, en riktigt söt Chromecast.