Es taucht ja immer wieder mal die Frage auf wie man es bei seiner Kamera mit der Zeitzone hält. Einige stellen die Uhrzeit immer um (auf Reisen, Sommer- und Winterzeit), andere nehmen konstant UTC. Es mag noch andere Varianten geben.
Ein Problem ist u.a. dass Tools wie Lightroom oder GeoSetter beim Geo Tagging grundsätzlich davon ausgehen, dass die Kamera auf Ortszeit eingestellt ist. Natürlich kann man einen Offset eingeben aber das war mir zu kompliziert weil ich nie sicher war ob nun vor oder zurück, ob nun eine oder zwei Stunden.
Für mich habe ich jetzt die perfekte Lösung gefunden:
Die Kamera läuft immer mit UTC.
Für den Import verwende ich das Exif-Tool, dazu habe ein gerade mal 4 Zeilen langes Batch-File geschrieben:
Die beiden ersten Zeilen sind nur Kosmetik, man kann sie auch weglassen.
Die dritte Zeile fragt die aktuelle Zeitzone (d.h. Sommer- oder Winterzeit) meines Rechners ab. In der vierten Zeile wird dieser Offset in die Exif-Daten des Bildes geschrieben und die Zeit entsprechend umgestellt. Danach importiere ich die Bilder ins Lightroom und alles passt. Für mich ist es genau ein Doppelklick den ich zusätzlich machen muss, um Sommer- oder Winterzeit muss ich mich nie wieder kümmern.
Hier eine Aufschlüsselung der Optionen (zum Beispiel Sommerzeit):
Wenn ich unterwegs in den Ferien (z.B. New York) bin, muss ich die dritte Zeile einfach durch
set TimeZone=-5
ersetzten, bevor ich das Skript starte.
Wenn ich mein GPS dabei habe und die Bilder Geo-Taggen möchte sieht die letzte Zeile des Skripts so aus:
Es wird erst das Geo-Tagging mit UTC ausgeführt, erst danach wird die Uhrzeit im Bild auf Lokalzeit verändert.
Ein zusätzliche Korrektur, falls die Kamera nicht mit der GPS-Zeit synchron läuft, kann man natürlich auch angeben, z.B. "-geosync=+0:05" wenn die Uhr in der Kamera 5 Minuten nach geht.
Da die Zeitzone mit ins Bild geschrieben wird, kann ich die Zeit später jederzeit auch korrigieren falls ich mich vertan habe. Auch nach Jahren kann ich nachsehen ob die angezeigte Aufnahmezeit Sommer- oder Winterzeit ist (ohne auf das Datum schauen zu müssen oder den Ort zu kennen).
Vielleicht mag jemand die Lösung übernehmen, mir fällt nichts Bequemeres ein das zuverlässig funktioniert.
Gruss
Wernfried
PS: Wenn ich mal einen Nachmittag Langeweile habe werde ich evtl. noch ein Skript schreiben, welches bei Bildern mit Geo-Tagging die jeweils lokale Zeitzone aus der GPS Position bestimmt - auch wenn es eher Spielerei ist!
Ein Problem ist u.a. dass Tools wie Lightroom oder GeoSetter beim Geo Tagging grundsätzlich davon ausgehen, dass die Kamera auf Ortszeit eingestellt ist. Natürlich kann man einen Offset eingeben aber das war mir zu kompliziert weil ich nie sicher war ob nun vor oder zurück, ob nun eine oder zwei Stunden.
Für mich habe ich jetzt die perfekte Lösung gefunden:
Die Kamera läuft immer mit UTC.
Für den Import verwende ich das Exif-Tool, dazu habe ein gerade mal 4 Zeilen langes Batch-File geschrieben:
Code:
@echo off SETLOCAL for /F "tokens=2 delims==" %%n in ('wmic OS Get CurrentTimeZone /value') do set /a TimeZone=%%n/60 "c:\Program Files (x86)\Exif\exiftool.exe" -progress -preserve -AllDates+=%TimeZone% -TimeZoneOffset=%TimeZone% -if "not $TimeZoneOffset" -out d:\Photos_Orginal\Import\ -recurse -ext .CR2 J:\DCIM
Die dritte Zeile fragt die aktuelle Zeitzone (d.h. Sommer- oder Winterzeit) meines Rechners ab. In der vierten Zeile wird dieser Offset in die Exif-Daten des Bildes geschrieben und die Zeit entsprechend umgestellt. Danach importiere ich die Bilder ins Lightroom und alles passt. Für mich ist es genau ein Doppelklick den ich zusätzlich machen muss, um Sommer- oder Winterzeit muss ich mich nie wieder kümmern.
Hier eine Aufschlüsselung der Optionen (zum Beispiel Sommerzeit):
- -progress
- Zeigt den Fortschritt an
- -preserve
- Die Uhrzeit der Datei wird nicht verändert
- -AllDates+=%TimeZone%
- Alle Zeiten den Bildes werden von UTC auf MESZ um 2h verstellt
- -TimeZoneOffset=%TimeZone%
- Die aktuelle Zeitzone wird ins Bild eingetragen
- -if "not $TimeZoneOffset"
- Verhindert, dass die Zeiten versehentlich mehrmals verstellt werden
- -out d:\Photos_Orginal\Import\
- Die Bilder werden in den Order "d:\Photos_Orginal\Import\" kopiert, von dort aus importiere ich sie ins Lightroom
- -recurse -ext .CR2 J:\DCIM
- Durchsuche alle Verzeichnisse der CF-Karte nach *.CR2 Dateien
Wenn ich unterwegs in den Ferien (z.B. New York) bin, muss ich die dritte Zeile einfach durch
set TimeZone=-5
ersetzten, bevor ich das Skript starte.
Wenn ich mein GPS dabei habe und die Bilder Geo-Taggen möchte sieht die letzte Zeile des Skripts so aus:
Code:
"c:\Program Files (x86)\Exif\exiftool.exe" -geotag "d:\GPS-Tracks\*.gpx" "-Geotime<${DateTimeOriginal}+00:00" -progress -preserve -AllDates+=%TimeZone% -TimeZoneOffset=%TimeZone% -if "not $TimeZoneOffset" -out d:\Photos_Orginal\Import\ -recurse -ext .CR2 J:\DCIM
- -geotag "d:\GPS-Tracks\*.gpx"
- Nimm die *.gpx Dateien im Verzeichnis d:\GPS-Tracks\
- "-Geotime<${DateTimeOriginal}+00:00"
- Die Uhrzeit der Kamera ist UTC (+00:00)
Es wird erst das Geo-Tagging mit UTC ausgeführt, erst danach wird die Uhrzeit im Bild auf Lokalzeit verändert.
Ein zusätzliche Korrektur, falls die Kamera nicht mit der GPS-Zeit synchron läuft, kann man natürlich auch angeben, z.B. "-geosync=+0:05" wenn die Uhr in der Kamera 5 Minuten nach geht.
Da die Zeitzone mit ins Bild geschrieben wird, kann ich die Zeit später jederzeit auch korrigieren falls ich mich vertan habe. Auch nach Jahren kann ich nachsehen ob die angezeigte Aufnahmezeit Sommer- oder Winterzeit ist (ohne auf das Datum schauen zu müssen oder den Ort zu kennen).
Vielleicht mag jemand die Lösung übernehmen, mir fällt nichts Bequemeres ein das zuverlässig funktioniert.
Gruss
Wernfried
PS: Wenn ich mal einen Nachmittag Langeweile habe werde ich evtl. noch ein Skript schreiben, welches bei Bildern mit Geo-Tagging die jeweils lokale Zeitzone aus der GPS Position bestimmt - auch wenn es eher Spielerei ist!
Kommentar