Mozilla stellt JPEG-Encoder mozjpeg vor
Mozilla Research hat heute mozjpeg vorgestellt. Dabei handelt es sich um einen Encoder für JPEG-Grafiken, welcher die Dateigröße in der ersten Version bereits um bis zu zehn Prozent reduzieren und damit die Ladezeit von Webseiten verringern soll.
Das Team von Mozilla Research hat mit mozjpeg ein neues Projekt vorgestellt. Das Ziel ist ein JPEG-Encoder, welcher unter Beibehaltung größtmöglicher Kompatibilität zu bestehenden JPEG-Decodern eine verbesserte Kompression und damit kleinere Dateigrößen bieten soll.
Die Motivation hinter mozjpeg sei die Tatsache, dass JPEG bereits seit 1992 genutzt wird und das meist genutzte Bildformat mit verlustbehafteter Kompression im Web ist, nahezu jeder Photograph stelle seine Bilder im Web als JPEG bereit. Es sei zudem das einzige verlustbehaftete Bildformat, welches eine beinahe universelle Kompatibilität besitze, nicht nur mit Webbrowsern, sondern mit allen Programmen, welche Bilder darstellen können.
Die Anzahl an Bildern auf Webseiten sei in den vergangenen Jahren gewachsen und HTML, CSS sowie JavaScript seien im Vergleich von der Dateigröße her relativ klein. Daher seien JPEG-Grafiken ein naheliegendes Ziel zur Optimierung.
In Bezug auf die Kompressionseffizienz seien vorhandene JPEG-Encoder allerdings stagniert, so dass ein Ersetzen von JPEG durch ein anderes Bildformat schon häufig ein Diskussionsthema gewesen sei. Dies hätte allerdings den ganz großen Nachteil, dass es viele Jahre geprägt von schlechter Kompatibilität brauchen würde, bis ein mögliches Nachfolgeformat flächendeckend unterstützt würde. Mozilla bezweifle nicht, dass Verbesserungen der Algorithmen irgendwann den Aufwand wert sein werden, aber selbst wenn irgendwann die Zeit käme, dass ein Nachfolgeformat eingesetzt wird, dann würde JPEG noch immer eine ganze Zeit lang weit verbreitet bleiben.
Im Blog von Mozilla Research schreibt man, dass man sich gefragt habe, ob JPEG-Encoder nach über 20 Jahren wirklich ihr volles Kompressionspotential erreicht hätten und nach einigen Gesprächen mit Software-Ingenieuren sei die Antwort darauf ‚Nein‘ gewesen, auch nicht unter Berücksichtigung der Kompatibilitätsanforderungen. Dies war der Anlass für das Projekt mozjpeg.
Mozilla hat mit der Ankündigung mozjpeg in Version 1.0 veröffentlicht. Dabei handelt es sich um einen Fork von libjpeg-turbo mit hinzugefügter jpgcrush-Funktionalität. Damit kann die Dateigröße von JPEG-Grafiken ohne Qualitätsverlust typischerweise um zwei bis sechs Prozent für nach JPEG enkodierte PNG-Grafiken verringert werden, für ein Set von 1.500 JPEG-Grafiken von Wikimedia hätte man die Dateigröße um durchschnittlich sogar zehn Prozent reduzieren können. Nach Mozillas Kenntnisstand besitzt kein bislang verfügbarer Encoder diese Funktionalität direkt eingebaut, darum hätte man sich dafür als erstes Feature von mozjpeg entschieden. Das nächste Ziel sei eine Verbesserung des Encodings durch eine sogenannte Trellis-Quantisierung.
Google möchte ebenfalls die Dateigröße von Bildern reduzieren, setzt hierbei aber vor allem auf sein eigenes Format WebP, welches einige namhafte Anhänger in der Webbranche hat. Mozilla ist von WebP allerdings wenig überzeugt.
Weitere aktuelle Artikel aus der Kategorie „Mozilla“
- 01.12.2024🎄🎁 Weihnachten steht vor der Tür - Produkte von Mozilla als Geschenkidee
- 15.11.2024Quellcode von Pocket für Android als Open Source veröffentlicht
- 14.11.2024Quellcode von Mozilla Didthis als Open Source veröffentlicht
- 06.11.2024Mozilla Foundation entlässt 30 Prozent der Mitarbeiter
- 16.10.2024Didthis: Einstellung des Projekts, Code wird Open Source
Warum versucht man nicht lieber das freie PNG-Format voran zu bringen? Soweit ich weiß ist diese Komprimierung auch verlustfrei, wenn man es wieder Dekrompimieren wollte. Bin mir da jetzt allerdings nicht mehr ganz sicher. Auch ist es mit .JPEG-Bildern nicht möglich einen transparenten Hintergrund zu erstellen. Gerade das möchte man ja gerne als Webseitenbetreiber, damit man nicht jedes Mal die Hintergrundfarbe an sein Theme anpassen muss. Natürlich ist JPEG kleiner, aber bei steigenden Downloadraten sollte das kein Problem sein, denke ich.
Nochmals bedanke ich mich für deine informellen Berichte über Mozilla.
Wieso Mozilla das JPEG-Format anstelle des PNG-Formats verbessern möchte, kann ich nicht sagen, vielleicht sieht Mozilla hier den größeren Bedarf oder auch das größere Potential. JPEG ist übrigens nicht unbedingt ein Format mit verlustfreier Kompression, sondern auch mit verlustbehafteter Kompression. Beide Formate haben ihre eigenen Anwendungsgebiete. Für Icons ist ein transparenter Hintergrund und damit PNG sicher vorteilhaft. Im Blog-Artikel von Mozilla Research wurden Photographen als Beispiel genannt, die werden für ihre Bilder ganz sicher eher JPEG als PNG verwenden, wenn sie die ins Web stellen.
Mach ich gerne und danke. 😉
Hachja Sören, ich hätte mal gerne deinen Kommentar zu diesem werten Herren hier:
http://www.heise.de/newsticker/foren/S-Stand-der-Technik-ist-JPEG-9-1/forum-276010/msg-24892359/read/
Wusste gar nicht, dass die Zeugen Jehovas jetzt auch schon so an virtuelle Haustüren klopfen und jetzt so die Leute bekehren wollten. 😉
Ich meinte auch, dass PNG eine verlustfreie Kompension unterstützt, soweit ich das im Hinterkopf habe. Aber du hast schon Recht. Fotos werden eigentlich von den Kameras direkt als JPEG auf die SD-Karte geschrieben. Eigentlich könnte man sich auch das Geld für Lizenzkosten sparen, da PNG bekanntermaßen ja wirklich nichts kostet, im Gegensatz zu JPEG. Man sollte wirklich noch mehr in freie Standards investieren. Wenigstens wurde .docx als Standard verdrängt und .odt als Standard deklariert. Aber das ist wieder ein anderer Schuh. 😀
Edit:
Ja ist verlustrei -> https://de.wikipedia.org/wiki/Portable_Network_Graphics
@Antares: Dazu hab ich keinen weiteren Kommentar außer dass ich Kommentare von solchen Spinnern hier gar nicht erst freischalten würde. Man sollte ab einem gewissen Promille-Pegel den Computer weggenommen bekommen. 😉
@Patsche: Ja, PNG ist ein definitiv verlustfreies Format, JPEG allerdings nicht unbedingt. Das empfand ich als wichtige Klarstellung, weil du meintest, PNG sei auch ein verlustfreies Bildformat. 😉 Es geht auch nicht unbedingt darum, was von den Kameras direkt auf die Karte gespeichert wird, das könnte man ja immer noch umwandeln, JPEG und PNG haben einfach beide ihre Vor- und Nachteile und beide ihre eigenen Anwendungsfälle und Daseinsberechtigungen. PNG ist nicht für jeden Anwendungsfall besser als JPEG.
Hab mich verkehrt ausgedrückt. Wollte damit nur unterstreichen, dass man mit PNG verlustfrei komprimieren kann und mit JPEG eben nicht. Tja unsere deutsche Sprache ist schon sehr genau, da beneiden uns andere Länder/Sprachen. (Stichwort: Personalausweis / in Österreich heißt es, wie ich finde, richtiger: Personenausweis, aber das nur am Rande 😉 )
Keine Ahnung, wie das in Österreich heißt. Da ich aus Deutschland komme, besitze ich ebenfalls einen Personalausweis. Aber ja, manche Dinge heißen in Österreich anders. 😛