Entwickler-Ecke

Multimedia / Grafik - JEPEG: Pixelformat lesen


GuaAck - Mo 26.09.22 22:53
Titel: JEPEG: Pixelformat lesen
Hallo,

ich möchte für ein JPEG-Bild wissen, ob es mit den üblichen 24-Bit/Pixel oder mit 8-Bit/Pixel gespeichert ist. "TJPEGImage.pixelformat" gibt laut Hilfe an, wie das Bild angezeigt wird, also nicht, wie es in der Datei gespeichert ist. So verhält sich mein Testprogramm auch. Aber wie kann ich die Bits/Pixel einer *.JPG-Datei bestimmen? Main aktueller Notbehelf: Dateilänge/Bildbreite/Bildhöhe führt auf einen Schätzwert, so dass ich einigermaßen zuverlässig 8-Bit und 24-Bit unterscheiden kann.

Kennt jemand den korrekten Weg, die Bits/Pixel zu lesen?

Gruß
GuaAck


jaenicke - Mo 26.09.22 23:13

Offenbar wird das PixelFormat in TJepgImage beim Lesen einer .jpg Datei gar nicht geschrieben. Ich vermute daher, dass man diese Information mit Bordmitteln nicht heraus bekommt.


jasocul - Di 27.09.22 07:16

Man könnte einfach den Header der Datei auslesen. Dort sollten die Infos enthalten sein.
Deutsche Beschreibung [http://www.aboutvb.de/bas/formate/pdf/jpg.pdf]
Englische Beschreibung [https://www.w3.org/Graphics/JPEG/jfif3.pdf]

Selbst habe ich das noch nicht ausprobiert.


GuaAck - Di 27.09.22 22:37

Hallo jasocul,

das war ein hilfreicher Tipp. Geht bestens!!!

(Ich hatte vor längerer Zeit mal ein kleines Programm gemacht, um mir die Segmente in einer JPG-Datei in hex anzeigen zu lassen, damit hatte ich schon einen Rohling).

Gruß GuaAck