Hacker / Cracker / Coder wanted!

Datum: 10.10.2003 Uhrzeit: 22:44:32 Stefan Hendricks, oly-e.de Seltsamer Betreff, gell 😉 Diesmal brauche ich Hilfe: Es geht um die Analyse der E-1 JPEGs. Irgendwo in der Datei ist hinterlegt, welches Objektiv verwendet wurde, allerdings nicht in den bekannten Exif-Feldern. Die Software zur E-1 zeigt an, welche Optik verwendet wurde, also muss es in der Datei hinterlegt sein. Die Software zeigt auch die Exif-Infos, dort taucht das Objektiv allerdings nicht auf (was nicht heisst, dass es nicht doch irgendwo dort hinterlegt ist). Ziel ist es, dass beim zukünftigen Upload in die Galeria das Objektiv automatisch aus dem JPEG ausgelesen wird. Wer also Zeit, Musse, Know-How und einen Hex-Editor hat – ich habe auf die schnelle nichts gefunden und kümmere mich die nächste Zeit noch um die anderen Parameter rund um die E-1 für die Galeria. Eine geeignete Datei findet Ihr unter https://oly-e.de/news/?140,e.e-system Die Software zeigt für dieses Bild folgende Objektiv-Information an: 14-54mm F2 8-3 5″ Wer’s rausbekommt (idealerweise gleich mit einem PHP-Skript oder einem Windows Commandline Tool welches die Daten ausliest) ist sich einer Prämie freier Wahl aus https://oly-e.de/galeria_aktion.php4 sicher 😉 Gruss Stefan Hendricks oly-e.de” —————————————————————————————————————————————— Datum: 11.10.2003 Uhrzeit: 11:38:02 Stefan Petersen Hallo Stefan, ersteinmal vielen Dank für diese E1-Testaufnahme. Vergleicht man diese nun mit dem Tatoo-Man von Olympus, dann fällt folgendes auf: – Tatoo-Man sagt als Firmware Adobe Photoshop 7.0″ Deine E1 = “D4040” – Tatoo-Man sagt als EXIF-Version “0210” Deine E1 = “0221” Das heißt zum einen der Tatoo-Man ist mit PS nachbearbeitet worden und daß in der Serien-E1 die neue EXIF-Version 2.21 eingesetzt wird. Ich habe Dein Testbild einmal mit meienen Tools betrachtet achte bei der folgenden Ausgabe einmal auf die Zeilen 84-88: 001: ————————— 002: File = E:\Images\DSC\OLYMPUS\E1\P10100001.JPG 003: Section count = 6 004: Section[1].type = $E1 – Exif Data (32106) 005: Section[2].type = $DB – Define quantization table (197) 006: Section[3].type = $C4 – Define Huffman table (418) 007: Section[4].type = $DD – Restart interoperability definition (4) 008: Section[5].type = $C0 – Baseline (17) 009: Section[6].type = $DA – Start of Scan (12) 010: 011: — EXIF-Data ————– 012: ErrStr = 013: Intel Byte Order 014: 015: Directory: Start entries = 17 12 016: tag[$010E]: Image Description = OLYMPUS DIGITAL CAMERA [size: 32] [start: 5321] 017: tag[$010F]: Make = OLYMPUS CORPORATION [size: 24] [start: 5353] 018: tag[$0110]: Model = E-1 [size: 17] [start: 5377] 019: tag[$0112]: Orientation = Normal [size: 2] [start: 63] 020: tag[$011A]: XResolution = 314 00 [size: 8] [start: 4165] 021: tag[$011B]: YResolution = 314 00 [size: 8] [start: 4173] 022: tag[$0128]: Resolution Unit = Inch [size: 2] [start: 99] 023: tag[$0131]: Software = Version 1.0 [size: 32] [start: 5395] 024: tag[$0132]: Date Time = 0000:00:00 00:00:00 [size: 20] [start: 5301] 025: tag[$0213]: YCb Cr Positioning = Co-sited [size: 2] [start: 135] 026: tag[$8769]: Exif Offset = 290 [size: 4] [start: 147] 027: Directory: Start entries = 299 31 028: tag[$829A]: Exposure Time = 1/40 sec [size: 8] [start: 5897] 029: tag[$829D]: FNumber = F3 0 [size: 8] [start: 5937] 030: tag[$8822]: Exposure Program = Normal [size: 2] [start: 333] 031: tag[$8827]: ISOSpeed Ratings = 100 [size: 2] [start: 345] 032: tag[$9000]: Exif Version = “0221” [size: 4] [start: 357] 033: tag[$9003]: Date Time Original = 0000:00:00 00:00:00 [size: 20] [start: 5854] 034: tag[$9004]: Date Time Digitized = 0000:00:00 00:00:00 [size: 20] [start: 5874] 035: tag[$9101]: Components Configuration = YCbCr [size: 4] [start: 393] 036: tag[$9204]: Exposure Bias Value = 0/10 [size: 8] [start: 5905] 037: tag[$9205]: Max Aperture Value = F3 0 [size: 8] [start: 5913] 038: tag[$9207]: Metering Mode = MultiSegment [size: 2] [start: 429] 039: tag[$9208]: Light Source = Unidentified [size: 2] [start: 441] 040: tag[$9209]: Flash = Off [size: 2] [start: 453] 041: tag[$920A]: Focal Length = 23 00 mm [size: 8] [start: 5929] 042: tag[$927C]: Maker Note = “OLYMP” [size: 2018] [start: 797] 043: tag[$9286]: User Comment = [size: 125] [start: 5729] 044: tag[$A000]: Flash Pix Version = “0100” [size: 4] [start: 501] 045: tag[$A001]: Color Space = sRGB [size: 2] [start: 513] 046: tag[$A002]: Exif Image Width = 2560 [size: 4] [start: 525] 047: tag[$A003]: Exif Image Length = 1920 [size: 4] [start: 537] 048: tag[$A005]: Interoperability Offset = 758 [size: 4] [start: 549] 049: Directory: Start entries = 767 2 050: tag[$0001]: Interoperability Index = R98 [size: 4] [start: 777] 051: tag[$0002]: Interoperability Version = “0100” [size: 4] [start: 789] 052: tag[$A300]: File Source = “.” [size: 1] [start: 561] 053: tag[$A401]: Custom Rendered = Normal process [size: 2] [start: 573] 054: tag[$A402]: Exposure Mode = Auto [size: 2] [start: 585] 055: tag[$A403]: White Balance = Auto [size: 2] [start: 597] 056: tag[$A404]: Digital Zoom Ratio = 0/100 [size: 8] [start: 5965] 057: tag[$A406]: Scene Capture Type = Standard [size: 2] [start: 621] 058: tag[$A407]: Gain Control = None [size: 2] [start: 633] 059: tag[$A408]: Contrast = Normal [size: 2] [start: 645] 060: tag[$A409]: Saturation = Normal [size: 2] [start: 657] 061: tag[$A40A]: Sharpness = Normal [size: 2] [start: 669] 062: tag[$C4A5]: Unknown = “PrintIM” [size: 244] [start: 5429] 063: 064: — Maker Specific Data —- 065: 066: tag[$0200]: SpecialMode = 0 0 0 [size: 12] [raw: 00 00 00 00 00 00 00 00 00 00 00 00 ] [start: 5245] 067: tag[$0201]: JpegQual = SHQ [size: 2] [raw: 03 00 ] [start: 31] 068: tag[$0202]: Macro = Off [size: 2] [raw: 00 00 ] [start: 43] 069: tag[$0204]: Digital Zoom Ratio = 0/1 [size: 8] [raw: 00 00 00 00 01 00 00 00 ] [start: 5265] 070: tag[$0207]: Firmware = “D4040” [size: 6] [raw: 44 34 30 34 30 00 ] [start: 5293] 071: tag[$0209]: Camera ID = “OLYMPUS DIGITAL CAMERA .” [size: 32] [raw: 4F 4C 59 4D 50 55 53 20 44 49 47 49 54 41 4C 20 ….] [start: 5299] 072: tag[$100F]: Sharpness = 0 [size: 2] [raw: 00 00 ] [start: 127] 073: tag[$1011]: Color Matrix = 352 65506 FF EE FF 32 01 E0 FF 06 00 84 FF …] [start: 5341] 074: tag[$1012]: Black Level = 64 64 64 64 [size: 8] [raw: 40 00 40 00 40 00 40 00 ] [start: 5359] 075: tag[$1017]: Red Bias = 426 64 [size: 4] [raw: AA 01 40 00 ] [start: 163] 076: tag[$1018]: Blue Bias = 296 64 [size: 4] [raw: 28 01 40 00 ] [start: 175] 077: tag[$1029]: Contrast = 1 [size: 2] [raw: 01 00 ] [start: 187] 078: tag[$102A]: Sharpness Factor = 608 [size: 2] [raw: 60 02 ] [start: 199] 079: tag[$102B]: Color Control = 96 4096 2944 4096 16 128 [size: 12] [raw: 60 00 00 10 80 0B 00 10 10 00 80 00 ] [start: 5379] 080: tag[$102C]: Valid Bits = 12 0 [size: 4] [raw: 0C 00 00 00 ] [start: 223] 081: tag[$102D]: Coring Filter = 1024 [size: 2] [raw: 00 04 ] [start: 235] 082: tag[$102E]: Final Width = 2560 [size: 4] [raw: 00 0A 00 00 ] [start: 247] 083: tag[$102F]: Final Height = 1920 [size: 4] [raw: 80 07 00 00 ] [start: 259] 084: tag[$2010]: Unknown = “……….010………8……. ….>……. …^.. [size: 252] [raw: 15 00 00 00 07 00 04 00 00 00 30 31 30 00 00 01 …] [start: 339] 085: tag[$2020]: Unknown = “……….010…………………ö´Â§0………ö­h. [size: 372] [raw: 1F 00 00 00 07 00 04 00 00 00 30 31 30 00 00 01 …] [start: 597] 086: tag[$2030]: Unknown = “……….010………ö˜…………………….. [size: 168] [raw: 0E 00 00 00 07 00 04 00 00 00 30 31 30 00 00 01 …] [start: 975] 087: tag[$2040]: Unknown = “……….010………ª.(………..`………r.. [size: 300] [raw: 19 00 00 00 07 00 04 00 00 00 30 31 30 00 00 01 …] [start: 1149] 088: tag[$2050]: Unknown = “2………010………+.ö»……….. ………0.Z [size: 600] [raw: 32 00 00 00 07 00 04 00 00 00 30 31 30 00 00 02 …] [start: 2475] 089: 090: — Thumbnail Data —- 091: Thumbnail Start = 680 092: Thumbnail Length = 31429 093: 094: tag[$0103]: Compression = Jpeg [size: 2] [start: 699] 095: tag[$011A]: XResolution = 72 00 [size: 8] [start: 5997] 096: tag[$011B]: YResolution = 72 00 [size: 8] [start: 6005] 097: tag[$0128]: Resolution Unit = Inch [size: 2] [start: 735] 098: tag[$0201]: JPEGInterchange Format = 11910 [size: 4] [start: 747] 099: tag[$0202]: JPEGInterchange Format Length = 6371 [size: 4] [start: 759] 100: 101: — EXIF Summary -(short)— 102: P10100001.JPG 3417k 0000:00:00 2560w 1920h 103: 104: — EXIF Summary -(long)—- 105: File Name: P10100001.JPG 106: File Size: 3417k 107: File Date: 10.10.2003 108: Photo Date: 0000:00:00 00:00:00 109: Make (Model): OLYMPUS CORPORATION (E-1 ) 110: Dimensions: 2560 x 1920 111: Exposure Time: 1/40 sec 112: Focal Length: 23 00 mm 113: FNumber: F3 0 114: ISO: 100 115: Flash: No 116: 117: ** Widest Aperture is F3 0 118: ** Light Meter mode is MultiSegment *********************************** EOF In den “üblichen” EXIF-Daten kö¶nnen die Objektiv-Angaben nicht stecken das Geheimnis steckt in den “Maker Specific Data” denn jeder Hersteller stattet ja seine Modelle mit bosonderen Merkmalen aus die in anderen Modellen nicht oder mit anderen Features vorhanden sind. Die “Maker Specific Data” sind vom Hersteller frei definierbar um Daten über die eingebauten / angesteuerten Geräte machen zu kö¶nnen wie im Bsp. der E1 über das Objektiv. Diese Tags (hier $2010 $2020 $2030 $2040 und $2050) müsse dann aber erst über eine Hersteller-Tabelle übersetzt werden die aussagt was die Tags dort eigentlich aussagen sollen und die Infos kann wohl nur der Hersteller geben (mir ist bis dato keine andere Quelle bekannt). Da Dir dir Objektiv-Infos mit der zur Kamera gehö¶renden Software also angezeigt werden ist dort diese Übersetzungstabelle drin. Vielleicht kannst Du Deine Connection zu OLY dazu nutzen daß wir über die Hersteller-spezifischen Angaben die Infos bekommen am Besten natürlich für alle Geräte? Hilft das fürs Erste ? Viele Grüße Stefan Stefan Hendricks oly-e.de wrote: > Seltsamer Betreff gell 😉 > Diesmal brauche ich Hilfe: > Es geht um die Analyse der E-1 JPEGs. Irgendwo in der Datei ist > hinterlegt welches Objektiv verwendet wurde allerdings nicht in > den bekannten Exif-Feldern. Die Software zur E-1 zeigt an welche > Optik verwendet wurde also muss es in der Datei hinterlegt sein. > Die Software zeigt auch die Exif-Infos dort taucht das Objektiv > allerdings nicht auf (was nicht heisst dass es nicht doch irgendwo > dort hinterlegt ist). > Ziel ist es dass beim zukünftigen Upload in die Galeria das > Objektiv automatisch aus dem JPEG ausgelesen wird. > Wer also Zeit Musse Know-How und einen Hex-Editor hat – ich habe > auf die schnelle nichts gefunden und kümmere mich die nächste Zeit > noch um die anderen Parameter rund um die E-1 für die Galeria. > Eine geeignete Datei findet Ihr unter > https://oly-e.de/news/?140 e.e-system > Die Software zeigt für dieses Bild folgende Objektiv-Information > an: > “14-54mm F2 8-3 5″ > Wer’s rausbekommt (idealerweise gleich mit einem PHP-Skript oder > einem Windows Commandline Tool welches die Daten ausliest) ist > sich einer Prämie freier Wahl aus > https://oly-e.de/galeria_aktion.php4 sicher 😉 > Gruss > Stefan Hendricks oly-e.de Stefan Petersen WWW: http://home.t-online.de/home/sp531561 eMail: sp531561@t-online.de” —————————————————————————————————————————————— Datum: 11.10.2003 Uhrzeit: 14:24:22 Stefan Hendricks, oly-e.de > Die Maker Specific Data” sind vom Hersteller frei definierbar um > Daten über die eingebauten / angesteuerten Geräte machen zu > kö¶nnen wie im Bsp. der E1 über das Objektiv. > Diese Tags (hier $2010 $2020 $2030 $2040 und $2050) müsse dann > aber erst über eine Hersteller-Tabelle übersetzt werden die > aussagt was die Tags dort eigentlich aussagen sollen und die > Infos kann wohl nur der Hersteller geben (mir ist bis dato keine > andere Quelle bekannt). > Da Dir dir Objektiv-Infos mit der zur Kamera gehö¶renden Software > also angezeigt werden ist dort diese Übersetzungstabelle drin. Danke soweit – bzw. soweit war ich auch schon 😉 Die Frage ist ob nicht vielleicht doch das Objektiv in irgendwelchen “Unknown Tags” im verschlüsselten Klartext gespeichert ist. Ich mö¶chte die Mö¶glichkeit der Übersetzungstabelle nicht ausschliessen das würde aber bedeuten dass wenn zukünftig irgendwelche Objektive dazukommen die die Software jetzt noch nicht kennt auch gleichzeitig ein Softwareupdate notwendig wäre. Da ich leider z.Zt. auch keine anderen Objektive zur Verfügung habe kann ich auch schlecht vergleichen also ist weiteres Nachforschen angesagt 😉 Gruss Stefan Hendricks oly-e.de” —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 16:16:34 Andy Tja, Stefan, > 14-54mm F2 8-3 5″ keine Ahnung ob Dir das was nützt aber im Hex-Code ab Adresse 4F4 steht: 0E 00 36 00 08 02 0E ist 14 36 ist 54 und ein Word wird für gewö¶hnlich “gedreht” geschrieben also steht da: 0 14 0 54 2 8 Hmmm – Zufall? Andy andy@stresspress.de” —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 16:26:11 Stefan Hendricks, oly-e.de >> 14-54mm F2 8-3 5″ > keine Ahnung ob Dir das was nützt aber im Hex-Code ab Adresse 4F4 > steht: > 0E 00 36 00 08 02 > 0E ist 14 36 ist 54 und ein Word wird für gewö¶hnlich “gedreht” > geschrieben also steht da: > 0 14 0 54 2 8 > Hmmm – Zufall? Guter Ansatz zumindest. Das habe ich an einem anderen Foto zumindest nachvollziehen kö¶nnen – die 3 5 scheint aber nicht auzutauchen (aber egal zur eindeutigen identifizierung würde das ja erstmal reichen). Nun müsste man mal eine Aufnahme mit einem anderen Objektiv haben – ich schau mal ob ich welche bekommen kann Danke soweit! Gruss Stefan Hendricks oly-e.de” —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 17:02:21 Frank Ledwon Andy wrote: > Tja, Stefan, >> 14-54mm F2 8-3 5″ > keine Ahnung ob Dir das was nützt aber im Hex-Code ab Adresse 4F4 > steht: > 0E 00 36 00 08 02 > 0E ist 14 36 ist 54 und ein Word wird für gewö¶hnlich “gedreht” Das trifft hier aber ganz sicher zu da die Byteorder laut EXIF-Header nach Intel-Notation erfolgt (49 49 2A oder ‘II’ –> Intel 4D 4D 2A oder ‘MM’ –> Motorola). > geschrieben also steht da: > 0 14 0 54 2 8 > Hmmm – Zufall? Das sieht doch ganz gut aus: Beim 300er steht da 2C 01 2C 01 08 02 also 300 300 2 8. Beim 50er Makro steht da 32 00 32 00 08 02 also 50 50 2 8 (eigentlich sollte da 2.0 stehen naja Testbilder aus pre-production cams). Beim 50-200er steht dort 32 00 C8 00 08 02 also 50 200 2 8. Das kö¶nnte also rein zufällig passen 🙂 Frank” —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 17:14:00 Andy Hi Stefan, > die 3,5 scheint aber nicht auzutauchen ja – dahinter steht nur 03 00 (also nur 3 – nicht wirklich hilfreich – bei 2 würde ich ja noch sagen: + 2 Blendwerte), aber vielleicht wird ja auch generell nur die grö¶ßte Blende abgespeichert (2,8) – es ist wohl auch nicht so sehr wahrscheinlich, das es sobald auch noch ein 14-54 2,8-3,2 geben wird… Interessant: im Umfeld steht noch 2 mal die 01 (davor und dahinter) – sollte das vielleicht der Hersteller-Code (01 = Olympus würde ja passen) sein? Schließlich sollte es ja irgendwann auch Objektive von anderen Herstellern geben…. > Nun müsste man mal eine Aufnahme mit einem > anderen Objektiv haben Das wäre auf jeden Fall hilfreich. Aber Frank hat da ja schon (erfolgreich) nachgegrast… (Ähm, Frank, was steht bei den anderen Objektiven dahinter? Und was steht bei 4F0 bzw. 4FC – auch 01? – welche Bilder hast Du überhaupt nachgeschaut?) > Danke soweit! Keine Ursache – was tut man nicht alles für eine Kopfprämie ;-)))))))))))))) Andy andy@stresspress.de —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 20:41:05 Stefan Hendricks, oly-e.de >> die 3,5 scheint aber nicht auzutauchen > ja – dahinter steht nur 03 00 (also nur 3 – nicht wirklich > hilfreich – bei 2 würde ich ja noch sagen: + 2 Blendwerte), aber > vielleicht wird ja auch generell nur die grö¶ßte Blende > abgespeichert (2,8) Bleibt die Unstimmigkeit, dass beim Macro (f2.0) auch 2.8 rauskommen würde, ich denke also, dass die gedachten” 2.8 an dieser Stelle nicht wirklich der Hinweis auf die grö¶sste Blende ist. Macht aber nix denn die wird in den “normalen” Exif-Headern (SubInformation / MaxApertureValue) ohnehin angegeben. Und mit den Daten kann ich (zumindest bei der aktuellen Objektivpalette) die verwendete Optik eindeutig zuordnen 🙂 Zwischenzeitlich konnte ich das ganze hier an Bildern mit dem 50er dem 50-200er und meinem 14-54er nachvollziehen. > Keine Ursache – was tut man nicht alles für eine Kopfprämie Ich würde sagen die steht Dir auch zu denn von Dir kam entscheidende Hinweis (Danke auch an Stefan und Frank sowie Eric für die Samples!). Wunschprämie bitte per eMail mitteilen wird Dir dann feierlich auf dem Usertreffen überreicht 😉 Gruss Stefan Hendricks oly-e.de” —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 20:58:22 Frank Ledwon Andy wrote: > Hi Stefan, >> die 3,5 scheint aber nicht auzutauchen > ja – dahinter steht nur 03 00 (also nur 3 – nicht wirklich > hilfreich – bei 2 würde ich ja noch sagen: + 2 Blendwerte), Wenn 08 02 als 2,8 interpretiert wird, dann ist 03 00 wohl eher 0,3. Das macht aber auch keinen Sinn, denn 3,5 ist ja 2/3 Blenden mehr als 2,8, oder meinen die etwa 1/3 Blende weniger als die nächstkleinere Blende 4? Mit dem Kehrwert von 0,3 wäre das verwirrenderweise Blende 3,333… Beim Makro-Objekiv bzw. bei den hier vorliegenden Testbildern paßt das eh nicht mit Blende 2. Hmm. >> Nun müsste man mal eine Aufnahme mit einem >> anderen Objektiv haben > Das wäre auf jeden Fall hilfreich. > Aber Frank hat da ja schon (erfolgreich) nachgegrast… Wie ein fleißiges Bienchen habe ich in der letzten Zeit massig Testbilder gesammelt. Zu irgendwas muß das doch gut gewesen sein: Hmm, lecker Honig 😉 > (Ähm, Frank, was steht bei den anderen Objektiven dahinter? Und > was steht bei 4F0 bzw. 4FC – auch 01? – welche Bilder hast Du > überhaupt nachgeschaut?) Nur Stichproben aus den nach Brennweite/Offenblende (MaxAperturevalue) vorsortierten Verzeichnissen 😉 Das mit der 01 kö¶nnte zwar stimmen, aber so einfach wird man uns das nicht machen… Moment mal, an Offset 500 taucht nochmal die Brennweite vom langen Ende auf: 36 00 00 00 0A 02 03 00 01 Nehmen wir doch einfach mal an, daß mit 0A 02 –> Blende 3,5 gemeint ist und schon paßt das, allerdings bis auf das Makro-Objektiv. Dort kann man aber noch den Wert aus MaxAperturevalue=2.0 zur Sicherheit heranziehen. >> Danke soweit! > Keine Ursache – was tut man nicht alles für eine Kopfprämie > ;-)))))))))))))) Damit wir das Thema endlich abhaken kö¶nnen, folgt hier ein Q/D-Lö¶sungsansatz: – Download der EXIFutils – installieren und neustarten (Win95/Me) bzw. ausloggen und neu einloggen (2K/XP) – mit folgendem Befehl erhält man dann die speziellen Maker Notes” von Olympus in einer Textdatei in einer Zeile (BTW die Maker Notes von E-10 bzw. E-20 sind teilweise bekannt und dokumentiert): exiflist /o t /s “[maker-note]” p1010001.jpg>makernote.txt – die entsprechenden Positionen ermitteln die Werte (paarweise die Nibbles zu Bytes konvertieren) auslesen feddich. Allerdings taucht die kurze Brennweite nochmal an 4EA mit 07 02 auf. Am besten einfach ignorieren und mit 4F4 (2 Bytes) -> kurze Brennweite 4F6 (2 Bytes) -> lange Brennweite 4F8 (2 Bytes) -> Offenblende 504 (2 Byte) -> Blende am langen Ende das eingesetzte Objektiv erraten. Das scheint bei den bisher bekannten Objektiven erstmal zu funktionieren wobei die Auswirkungen vom Telekonverter bisher unbekannt sind. Die Offsets innerhalb der Makernotes stimmen natürlich nicht mit den Dateioffsets überein aber das dürfte dann die leichteste Übung für Stefan sein denn von PHP habe ich eh keine Ahnung 😉 HTH Frank PS: Warum sich die immerhin updatefähige Objektivintelligenz nicht im Klartext in irgendeinem EXIF-Header verewigt wird mir für ewig und drei Tage ein Rätsel bleiben.” —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 21:13:28 Stefan Hendricks, oly-e.de > Damit wir das Thema endlich abhaken kö¶nnen, folgt hier ein > Q/D-Lö¶sungsansatz: Schon in PHP quick’n’dirty umgesetzt, näheres weiter unten … > – Download der EXIFutils > – installieren und neustarten (Win95/Me) bzw. ausloggen und neu > einloggen (2K/XP) > – mit folgendem Befehl erhält man dann die speziellen Maker > Notes” von Olympus in einer Textdatei in einer Zeile (BTW die Maker > Notes von E-10 bzw. E-20 sind teilweise bekannt und dokumentiert): Habe schonmal meine Fühler Richtung Olympus ausgestreckt vielleicht ist ja eine Doku über die E-1 Makernotes zu bekommen. > exiflist /o t /s “[maker-note]” p1010001.jpg>makernote.txt > – die entsprechenden Positionen ermitteln die Werte (paarweise > die Nibbles zu Bytes konvertieren) auslesen feddich. > Allerdings taucht die kurze Brennweite nochmal an 4EA mit 07 02 > auf. Am besten einfach ignorieren und mit 4F4 (2 Bytes) -> kurze > Brennweite 4F6 (2 Bytes) -> lange Brennweite 4F8 (2 Bytes) -> > Offenblende 504 (2 Byte) -> Blende am langen Ende das eingesetzte > Objektiv erraten. Das scheint bei den bisher bekannten Objektiven > erstmal zu funktionieren wobei die Auswirkungen vom Telekonverter > bisher unbekannt sind. > Die Offsets innerhalb der Makernotes stimmen natürlich nicht mit > den Dateioffsets überein aber das dürfte dann die leichteste Übung > für Stefan sein denn von PHP habe ich eh keine Ahnung 😉 Das ist mir zu umständlich. Ich gehe nun mit PHP über’s Dateioffset direkt an die betreffenden Bytes und generiere mir einfach einen String (also z.b. “50” 14-54″ “50-200” “300” etc. In Kombination mit der Blende in MaxApertureValue reicht mir das erstmal. Wenn Konverter verwendet werden dann sind diese erstmal im Uploadformular anzukreuzen ist ja bei den anderen Modellen genauso. Wenn aber die Objektivauswahl für den Uploader schonmal wegfällt ist beiden Seiten schonmal sehr geholfen. > PS: Warum sich die immerhin updatefähige Objektivintelligenz > nicht im Klartext in irgendeinem EXIF-Header verewigt wird mir für > ewig und drei Tage ein Rätsel bleiben. Das wäre mein Wunschszenario dass da einfach steht $lens = “Zuiko Digital 14-54mm f2.8-3-5″ 😉 Ihr dürft aber gerne weiterforschen vielleicht bekommen wir das mit den Blenden ja auch noch auf die Reihe dafür lobe ich nochmal eine Wunschprämie aus! Gruss Stefan Hendricks oly-e.de” —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 21:31:46 Heinz Schumacher Stefan Hendricks, oly-e.de schrieb: > Das wäre mein Wunschszenario, dass da einfach steht $lens = Zuiko > Digital 14-54mm f2.8-3-5″ 😉 Normalerweise sollte auch noch irgendwo die hö¶chste Blende zu finden sein… sonst kracht es im Gebälk wenn die Kamera zu viel einstellen will!:-))) lg heinz” —————————————————————————————————————————————— Datum: 13.10.2003 Uhrzeit: 21:35:38 Stefan Hendricks, oly-e.de >> Das wäre mein Wunschszenario, dass da einfach steht $lens = Zuiko >> Digital 14-54mm f2.8-3-5″ 😉 > Normalerweise sollte auch noch irgendwo die hö¶chste Blende zu > finden sein… sonst kracht es im Gebälk wenn die Kamera zu viel > einstellen will!:-))) Klar das Objektiv teilt der Kamera die Werte mit. Nur gibt die Kamera diese (mö¶glicherweise) nicht an die Exif-Header der Bilddatei weiter 🙁 Gruss Stefan Hendricks oly-e.de” —————————————————————————————————————————————— Datum: 15.10.2003 Uhrzeit: 21:33:15 Frank Ledwon Stefan Hendricks, oly-e.de wrote: > Habe schonmal meine Fühler Richtung Olympus ausgestreckt, > vielleicht ist ja eine Doku über die E-1 Makernotes zu bekommen. Das wäre natürlich die beste Lö¶sung, aber vermutlich existiert die Doku ebensowenig wie der MA-1… >> exiflist /o t /s [maker-note]” p1010001.jpg>makernote.txt Das liefert leider auch nur die halbe Wahrheit. >> Allerdings taucht die kurze Brennweite nochmal an 4EA mit 07 02 >> auf. Am besten einfach ignorieren und mit 4F4 (2 Bytes) -> kurze >> Brennweite 4F6 (2 Bytes) -> lange Brennweite 4F8 (2 Bytes) -> >> Offenblende 504 (2 Byte) -> Blende am langen Ende das eingesetzte >> Objektiv erraten. Das war natürlich alles mehr oder weniger geraten und bei Olympus rollen die bestimmt seit ein paar Tagen lachend über den Boden 😉 Nach einer weiteren Analyse der EXIF-Strukturen scheinen sich aber diese Stellen als durchaus zutreffend herauszustellen. Bei einer E1-Original-Datei (z.B. plättet ACDSEE die Maker Notes) stehen in den 2 Bytes an Offset $4F4 die kurze Brennweite und in den 2 Bytes an Offset $500 die lange Brennweite (little endian). Die andere Stelle mit der langen Brennweite ($4F6) ist ganz offensichtlich ein Programmierfehler da jeglicher Verweis auf Daten an dieser Stelle fehlt 😉 Die Blendenwerte habe ich in den ersten 252 Bytes noch nicht gefunden aber das dürfte bei den paar bisher existierenden Objektiven ein leicht lö¶sbares Problem sein (MaxApertureValue). > Das ist mir zu umständlich. Ich gehe nun mit PHP über’s > Dateioffset direkt an die betreffenden Bytes und generiere mir > einfach einen String (also z.b. “50” 14-54″ “50-200” “300” etc. > In Kombination mit der Blende in MaxApertureValue reicht mir das > erstmal. Eine saubere Lö¶sung wäre natürlich das Durchhangeln durch die EXIF-Tags. Der von ExifReader ala ‘unknown’ bezeichnete Tag ‘$2010’ liefert den ersten Offset (bisher bei Originalen immer $466) mit weiteren Tags. Die Tags ‘$207’ und ‘$208’ enthalten dann die beiden Brennweiten. Allerdings scheitert an den neuen Strukturen bisher jede von mir getestete Software 😉 > Wenn Konverter verwendet werden dann sind diese erstmal im > Uploadformular anzukreuzen ist ja bei den anderen Modellen > genauso. Wenn aber die Objektivauswahl für den Uploader schonmal > wegfällt ist beiden Seiten schonmal sehr geholfen. Dann warten das mal ab. Immerhin verändert sich mit TC auch die Offenblende das sollte also irgendwie nachvollziehbar sein. Übrigens widersprechen sich die Oly-Seiten bei der Tauglichkeit des TC-14 für das Makro-Objektiv: Meistens heißt es nur: Geht nicht. Aber in irgendeiner FAQ steht dann: Geht aber Blende auf 2 8 stellen 😉 > Ihr dürft aber gerne weiterforschen vielleicht bekommen wir das > mit den Blenden ja auch noch auf die Reihe dafür lobe ich nochmal > eine Wunschprämie aus! Für eine E-1 würde ich doch sofort Delphi installieren und eine Software zum Durchsuchen der Maker Notes schreiben. Zu Fuß und ohne die nö¶tige Motivation ist das einfach nur ätzend zumal noch mehr als ein KB an kryptischen Daten zu analysieren sind. Egal irgendwann kommen die Unwetter und die kurzen kalten Tage… Frank” —————————————————————————————————————————————— Datum: 15.10.2003 Uhrzeit: 21:44:30 Stefan Hendricks, oly-e.de > Für eine E-1 würde ich doch sofort Delphi installieren und eine > Software zum Durchsuchen der Maker Notes schreiben. Zu Fuß und > ohne die nö¶tige Motivation ist das einfach nur ätzend, zumal noch > mehr als ein KB an kryptischen Daten zu analysieren sind. > Egal, irgendwann kommen die Unwetter und die kurzen, kalten > Tage… Dann nimm doch bitte gleich PHP, das erspart mir dann im Erfolgsfalle den Umweg über die Windowsmaschine 😉 Ich gebe Dir auch gerne was in PHP an die Hand, was mit Standard Exif Headern umgehen kann und die Makernotes schon ansatzweise integriert hat: http://www.offsky.com/software/exif/index.php Das ist zwar nicht das, was ich zur Zeit nutze, aber es wäre durchaus dahingehend ausbaubar. Es sind wahrscheinlich noch viele interessante Infos vertsteckt und die es sich in der Galeria E-1 anzuzeigen lohnen würde (war die Rauschunterdrückung an, MF oder AF etc.) Und wenn es dann DEIN SKRIPT ist, was hier die Infos hervorholt … ist das nicht Motivation genug? 😉 Gruss Stefan Hendricks, oly-e.de —————————————————————————————————————————————— Datum: 16.10.2003 Uhrzeit: 19:43:10 Frank Ledwon Stefan Hendricks, oly-e.de wrote: >> Für eine E-1 würde ich doch sofort Delphi installieren und eine >> Software zum Durchsuchen der Maker Notes schreiben. Zu Fuß und >> ohne die nö¶tige Motivation ist das einfach nur ätzend, zumal noch >> mehr als ein KB an kryptischen Daten zu analysieren sind. > Dann nimm doch bitte gleich PHP, das erspart mir dann im > Erfolgsfalle den Umweg über die Windowsmaschine 😉 Delphi gibt es auch für Linux und heißt dann sinnigerweise Kylix 😉 Ich sehe mir das mit dem PHP-Kram mal an, vielleicht kann man das ja auch für was anderes brauchen… > Ich gebe Dir auch gerne was in PHP an die Hand, was mit Standard > Exif Headern umgehen kann und die Makernotes schon ansatzweise > integriert hat: http://www.offsky.com/software/exif/index.php Ansatzweise ist gut 😉 Ok, PHP + SelfPHP (für späteres Studium) gesaugt, installiert und sogar zum Laufen gekriegt. Hmm, OLYMPUS DIGITAL CAMERA […] unknown” ist ja nicht unbedingt falsch aber doch etwas dürftig. > Das ist zwar nicht das was ich zur Zeit nutze aber es wäre > durchaus dahingehend ausbaubar. Es sind wahrscheinlich noch viele > interessante Infos vertsteckt und die es sich in der Galeria E-1 > anzuzeigen lohnen würde (war die Rauschunterdrückung an MF oder AF > etc.) Für die Analyse ist dann aber eine E-1 bzw. jede Menge Bilder mit unterschiedlichen Einstellungen zwingend erforderlich. Ok eigentlich nicht (die EXIF-Header kann ja eine E-1-Besitzer machen) aber wo bleibt dann der Spaß? Für die Analyse der unbekannten Strukturen nehme ich trotzdem erstmal dEXIF unter Delphi da dort alle relevanten Daten (auch die Raw-Werte und die Offsets) angezeigt werden. Außerdem sind dort schon wesentlich mehr E-x0-Header bekannt als bei Exifer. Selbst bei einem E-1-Bild (Kürbisse) liefert das Teil brauchbare Ergebnisse: — EXIF Summary -(long)—- File Name: P1010001.JPG File Size: 3417k File Date: 10.10.2003 Photo Date: 0000:00:00 00:00:00 Make (Model): OLYMPUS CORPORATION (E-1 ) Dimensions: 2560 x 1920 Exposure Time: 1/40 sec Focal Length: 23 00 mm FNumber: F3 0 ISO: 100 Flash: No ** Widest Aperture is F3 0 ** Light Meter mode is MultiSegment BTW bei Nikon wird die Objektiv-Bezeichnung auch aus diversen Headern zusammengesetzt. Vielleicht kann man diese Routinen recyclen 😉 > Und wenn es dann DEIN SKRIPT ist was hier die Infos hervorholt … > ist das nicht Motivation genug? 😉 Ein (Kürbis-)ORF aus der E-1 kö¶nnte die träge Masse erstmal gaaaanz laaaangsaaaam in die Gänge bringen 😉 Frank” —————————————————————————————————————————————— Datum: 16.10.2003 Uhrzeit: 22:13:00 Stefan Hendricks, oly-e.de > Delphi gibt es auch für Linux und heißt dann sinnigerweise Kylix Nun, wenn dabei ein CommandLineTool herauskommt, was mir die Werte einfach nach StdOut rauswirft bin ich auch damit schon sehr zufrieden. > Für die Analyse ist dann aber eine E-1 bzw. jede Menge Bilder mit > unterschiedlichen Einstellungen zwingend erforderlich. Ok, > eigentlich nicht (die EXIF-Header kann ja eine E-1-Besitzer > machen), aber wo bleibt dann der Spaß? Zwei Mö¶glichkeiten: Entweder auf dem UT selbst anfertigen oder einfach bei mir in Auftrag geben – ich helfe da ganz eigennützig sehr gerne aus 😉 > Ein (Kürbis-)ORF aus der E-1 kö¶nnte die träge Masse erstmal > gaaaanz laaaangsaaaam in die Gänge bringen 😉 Melde Dich einfach per eMail bei mir, was Du gerne hättest … Gruss Stefan Hendricks, oly-e.de ——————————————————————————————————————————————