Was ist JPEG XT?

JPEG XT, standardisiert als ISO/IEC 18477, erweitert Basis-JPEG um höhere Präzision sowie Encoding für HDR, Gleitkommadaten, verlustfreie Kompression und Alphakanäle. Seine Streams behalten ein Basisbild für ältere JPEG-Decoder bei.

Basis-JPEG plus Erweiterungsboxen
Ergebnis mit HDR, hoher Bittiefe, verlustfreiem Encoding oder Alphakanal
Ein älterer Decoder liest nur das Basisbild; ein JPEG-XT-Decoder liest auch die Erweiterungsdaten.

So funktioniert JPEG XT

JPEG XT baut auf dem älteren JPEG auf. Eine Datei enthält ein gewöhnliches JPEG-Bild als Basisebene sowie Erweiterungsdaten, die ein XT-Decoder mit dem decodierten Basisbild kombiniert, um das detailreichere Bild zu rekonstruieren. Der Codec thorfdbg/libjpeg, den das JPEG-Komitee unter den JPEG-XT-Implementierungen aufführt, speichert diese Erweiterungsdaten als Boxen in APP11-Anwendungsmarkersegmenten. Der JPEG-Standard reserviert Anwendungssegmente für Anwendungen, sodass bestehende Decoder die Datei lesen können, ohne die Erweiterung zu verstehen. Bei HDR-Inhalten ist das Basisbild eine Darstellung mit geringem Dynamikumfang: Dieser Encoder wendet standardmäßig Tone-Mapping auf die HDR-Eingabe an und akzeptiert bei einigen Profilen ein separat bereitgestelltes Bild. Der Standard ist in Teile gegliedert. Teil 1 beschreibt erneut den JPEG-Kern in seiner üblichen Verwendung, Teil 2 codiert HDR-Bilder und verwendet für seine Metadaten eine ältere textbasierte Darstellung, Teil 3 definiert das boxbasierte Dateiformat, Teil 6 ergänzt ganzzahlige Abtastwerte mit 9 bis 16 Bit, Teil 7 HDR-Gleitkommaabtastwerte, Teil 8 verlustfreies und nahezu verlustfreies Encoding und Teil 9 Alphakanäle. Die Unterstützung muss daher für jeden Teil und bei Teil 7 für jedes Profil angegeben werden, nicht als einzelnes Ja-Nein-Merkmal.

Wichtige Fakten

  1. Dass sich eine Datei in einem gewöhnlichen Bildbetrachter öffnen lässt, belegt nur, dass das Basis-JPEG intakt ist. HDR-Daten, Daten mit höherer Präzision, verlustfreie Daten oder Alphadaten werden in Anwendungsmarkersegmenten transportiert (APP11 beim Codec thorfdbg/libjpeg), die ein älterer Decoder nicht interpretiert. Prüfen Sie diese Daten daher mit einem Decoder für den betreffenden Teil von JPEG XT.
  2. Die Unterstützung von JPEG XT ist keine einzelne Fähigkeit. Teil 6 umfasst ganzzahlige Abtastwerte mit 9 bis 16 Bit, Teil 7 HDR-Gleitkommaabtastwerte, Teil 8 verlustfreies und nahezu verlustfreies Encoding und Teil 9 Alphakanäle, während Teil 1 lediglich den üblicherweise verwendeten JPEG-Kern erneut beschreibt. Teil 7 ist nicht der einzige HDR-Teil: Auch Teil 2 behandelt HDR und verwendet für seine Metadaten eine ältere textbasierte Darstellung. Fragen Sie, welche Teile und bei Teil 7 welches Profil ein Werkzeug liest und schreibt: Die eigene Softwareliste des JPEG-Komitees enthält einen Codec, der nur Teil 7 Profil B entspricht, und einen weiteren, der nur Teil 2 entspricht.
  3. Beim Neuschreiben einer Datei mit Werkzeugen, die nur JPEG unterstützen, können Erweiterungsdaten ohne Fehlermeldung verloren gehen. Das Werkzeug jpegtran von libjpeg-turbo kopiert beispielsweise standardmäßig nur Kommentarmarker und verwirft andere Metadaten; um alle zusätzlichen Marker zu behalten, ist -copy all erforderlich. Dass die Marker erhalten bleiben, belegt nicht, dass sich die Erweiterung weiterhin decodieren lässt: thorfdbg/libjpeg speichert beim Schreiben von JPEG-XT-Dateien eine Prüfsumme des Basis-JPEG-Streams und weist Erweiterungsdaten zurück, deren Abmessungen vom Basisbild abweichen. Vergleichen Sie daher die mit XT decodierte Ausgabe vor und nach jedem Neuschreiben. Beim Decodieren und erneuten Codieren mit einem älteren Codec dient allein das Basisbild als Ausgangspunkt.
  4. JPEG XT ist nicht JPEG XL. JPEG XT (ISO/IEC 18477) hält die Datei für ältere JPEG-Decoder lesbar. JPEG XL (ISO/IEC 18181) ist ein separates Encoding-System, dessen Brücke zum älteren JPEG in der verlustfreien Transkodierung einer bestehenden JPEG-Datei nach JPEG XL und zurück zur identischen JPEG-Datei besteht.

Wann JPEG XT wichtig ist

JPEG XT ist wichtig, wenn sich eine Datei in gewöhnlicher JPEG-Software öffnen lassen und zugleich HDR-Daten, Daten mit höherer Bittiefe, verlustfreie Daten oder Alphadaten für XT-fähige Software enthalten muss. Ältere Decoder zeigen nur das Basisbild. Daher müssen die zusätzlichen Daten mit einem Decoder geprüft werden, der den betreffenden Teil des Standards implementiert.

Quellen

Machen Sie aus Medienwissen eine funktionierende Pipeline

Verbinden Sie Uploads, Verarbeitung, KI, Storage und Auslieferung über eine deklarative API – um Encoding-Stack, Skalierung und ständig wechselnde Formate müssen Sie sich nicht selbst kümmern.

Transloadit kostenlos ausprobieren