Photo Mechanic ist ein praktisches und mächtiges Werkzeug für die Fotoverwaltung, es spielt eine zentrale Rolle in meinem Workflow. Auf der Seite mit der Beschreibung meines Workflows gehe ich auf einige Aspekte von Photo Mechanic ein. Zusätzlich gibt es auch ein PDF mit ein paar Anwendungsbeispielen:
Ein paar Besonderheiten von Photo Mechanic werden hier detaillierter beschrieben und zwar sind das:
Variablen
Variablen werden in Photo Mechanic v.a. als Platzhalter für Metadaten verwendet und werden zwischen geschwungenen Klammern geschrieben, also so: {<Name der Variablen>}.
Variablen können Daten enthalten, die bei der Aufnahme von der Kamera geschrieben wurden (Exif) wie z.B. die Brennweite {focallength} oder die Belichtungszeit {shutter}. Variablen können aber auch Daten enthalten, die nach der Aufnahme bei der Nachbearbeitung erstellt wurden (IPTC). Ein Beispiel dafür sind die Schlüsselwörter {keywords}.
Je nach Kamerahersteller werden in der Regel nicht alle Exif-Daten beschrieben, die in Photo Mechanic prinzipiell zur Verfügung stehen. Auch sind nicht alle Exif-Daten, die eine Kamera schreibt, in Photo Mechanic nutzbar. Beispiele dafür sind bei Olympus/OMDS-Kameras z.B. die Variable {actuations}, also die Anzahl der Auslösungen einer Kamera, oder andererseits der Exif-Wert für „Subject Distance“, also die Entfernung des fotografierten Objekts.
Die Liste aller Variablen mit Beschreibungen (in englisch) findet man im Internet oder man ruft sie in Photo Mechanic auf, das sieht dann mit entsprechendem Blättern in etwa so aus (im Feld oben wird die ausgewählte Variable beschrieben) – Bilder zum Vergrößern anklicken:
Eine Liste der Photo Mechanic Variablen mit deutscher Übersetzung (links) und eine Liste aller Shortcuts (rechts) findest Du hier – leider funktionieren nicht alle Shortcuts auf einem deutschen Mac-Keyboard, daran wird aber gearbeitet. Zum Runterladen dieser Listen: Klicke zunächst das entsprechende Bild an, dann klicke in Steuerungsmenü „…“ und wähle dann „Download PDF File“.
Variablen sind sehr vielfältig anwendbar, im oben erwähnten PDF ist z.B. gezeigt wie man damit Metadaten als „Wasserzeichen“ in ein Bild einfügt, oder wie man in einer Diashow Metadaten anzeigt.
Teilzeichenketten aus Variablen
Photo Mechanic bietet die Möglichkeit an, nur bestimmte Teile des Ergebnis einer Variablenabfrage zu verwenden. Man kann sich also Teile einer Variablenabfrage extrahieren. „Substring Variable Extraktion“ wird diese Methode im englischen Original genannt. Gemacht wird das so:
{variable:index,count:conversion} oder {variable:index:conversion}
In beiden Fällen ist die Umwandlung (conversion) nur optional. D.h. die Nutzung kann auch so erfolgen.
{variable:index,count} oder {variable:index}
Variable
wie im Abschnitt Variablen beschrieben
Index
meint das n-te Zeichen im Ergebnis der {Variable}. Das Zählen beginnt hier bei Null. Das heißt, das erste Zeichen hat den Index 0, das zweite Zeichen den Index 1, usw.
Count
zählt die Zeichen ab Index
Conversion
hier gibt es vier Möglichkeiten der Konvertierung oder Umwandlung. Es gibt dabei:
- lc: wandelt die ausgewählte Zeichenkette in Kleinbuchstaben um
- UC: wandelt die ausgewählte Zeichenkette in Großbuchstaben um
- PC: wandelt die ausgewählte Zeichenkette in einen Eigennamen um, also erster Buchstabe groß, Rest klein
- tr: steht für übersetzen (translate) und wird so verwendet: tr: <zu findende(s) Zeichen>/<ersetzende(s) Zeichen>. Will man nach einem / suchen, muss man // eingeben, möchte man nach \ suchen, dann /\.
Beispiele:
Du möchtest in einem Dateinamen alle „_“ durch „-“ ersetzen. Dann gibts Du in Photo Mechanic unter „Rename“ („File“-„Rename Photos…“ oder kurz: ⌘M) folgenden Befehl ein:
{filenamebase:0:tr:_/-}
Du hast in Deinen Dateinamen und der Dateierweiterung Groß- und Kleinbuchstaben verwendet, möchtest aber alle Buchstaben in Kleinbuchstaben umwandeln. Jetzt gibts Du unter „Rename“ folgendes ein:
{filename:0:lc}
Code Replacement
Code Replacement, also das Ersetzen von Codes, beschleunigt in Photo Mechanic die Beschriftung von Fotos bei häufig verwendeten Begriffen oder Namen, wie z. B. in der Sportfotografie. Code Replacement kann aber auch als Kurzschrift für die Ersetzung von Beschriftungen in jeder Art von Fotografie verwendet werden.
Um Code Replacement zu verwenden, erstellst Du zunächst eine Textdatei mit zwei oder mehr Tab-getrennten Spalten. In Microsoft Excel werden derartige Dateien mit „Tabstoppgetrennter Text“ bezeichnet. Die erste Spalte ist der „Code“ und die zweite Spalte (oder auch eine dritte, vierte,…) sind die Ersetzungen.
Ein Anwendungsfall wären Starterlisten z.B. bei einem Schirennen, einer Surfregatta oder einem ähnlichen Event. Wenn man dann auf einem Foto die Startnummer hat, kann man sich (halb-)automatisch dazugehörige Daten in die Metadaten der Fotos eintragen lassen. Hier ein Beispiel mit der Starterliste der Formel 1-Saison 2023 (als Beispiel gewählt, weil man sich diese Liste aus dem Internet einfach runter laden kann – ein Veranstalter eines Events, bei dem Du fotografierst, hat sicher Ähnliches zur Verfügung).
In obigem Beispiel enthält die erste Spalte den „Code“, in dem Fall die Startnummern. Die zweite Spalte enthält die Fahrernamen (das 1. Replacement, die 1. Ersetzung) , die dritte Spalte das Team (2. Replacement, wird mit #2 aufgerufen). Wichtig ist das Speichern als „Tabstoppgetrennter Text“, wenn man Excel verwendet.
Diese Datei laden wir jetzt in Photo Mechanic. Dazu gehen wir zunächst an diese Stelle:
Schneller kommt man an die entsprechende Stelle durch den Shortcut (am Mac) ctrl-cmd-c:
Hier dann „Add“ drücken und die vorher erstellte Datei auswählen. Im Bild unten wird gezeigt, wie das am Ende aussieht, die Code Replacements dieser Datei können danach genutzt werden. Den wählbaren „Delimiter character“, das Begrenzungszeichen, gibt man unten links ein. Ich nutze dafür das „=“ und nicht, wie im Bild oben vorgeschlagen, den Backslash „\“:
Die Nutzung des Code Replacements an einem Beispiel für die Bildbeschreibung („Caption“ in Photo Mechanic). Die Eingabe:
wird durch das Code Replacement ersetzt durch dieses Ergebnis:
Dabei wird =16= für den „Code“ 16 (die Startnummer) und davor und danach der „Delimiter character“, also das „=“, mit der 1. Ersetzung ausgetauscht (der Name des Fahrers mit der Nummer 16 ist Charles Leclerc). Möchte ich die 2. Ersetzung eines Codes aufrufen, dann füge ich ein „#2“ dazu, also z.B. =16#2= für die 2. Ersetzung des Codes 16, in diesem Fall ist das „Ferrari“. Wie oben beschrieben kann ich den „Delimiter character“ wählen. Ich habe das „=“ gewählt.
Hot Codes
Hot Codes sind eine spezielle Variante von Code Replacements. Diese Methode wird hier beschrieben, sie ist mächtiger als das normale Code Replacement.
Beispiel:
Ein Fotograf und zwei Fotografinnen haben ihre Fotos im gleichen Verzeichnis abgelegt. Leider haben alle drei vergessen, ihre jeweiligen Namen in das IPTC-Feld für Creator/Photographer einzufügen. Das wollen wir jetzt in Photo Mechanic „automatisiert“ ausbessern.
Wir wissen vom Fotografen, er heißt Max Muster, die Seriennummer seines Fotoapparats, sie lautet BJMA00047.
Auch von der ersten Fotografin, sie heißt Bianca Beispiel, wissen wir die Seriennummer der Kamera, diese ist BJMA00011.
Wir werden Max und Petras Fotos mit den Seriennummern ihrer Kameras identifizieren.
Die Kamera unserer zweiten Fotografin, Petra Paradigma, speichert keine Seriennummer. Aber Petra speichert alle Fotos nach folgendem Muster ab:
yyyymmdd-<Beschreibung des Fotos>-PP-ffff.jpg
Dabei steht yyyy für die vierstellige Jahreszahl, mm für die zweistellige Monatszahl und dd steht für die zweistellige Tageszahl. Die <Beschreibung des Fotos> beschreibt was aus dem Foto zu sehen ist und hat daher auch keine einheitliche Zeichenanzahl ist je nach Beschreibung unterschiedlich lang. Dann kommt Petras Kürzel, das lautet PP, und danach noch die 4-stellige Framenummer.
Wir werden Petras Fotos anhand des Kürzels PP identifizieren.
Wir schreiben und nach dem Beispiel von oben wieder einen „tabstoppgetrennten Text“ mit dem unten gezeigten Inhalt und laden diesen Inhalt nach Photo Mechanic:
Analysieren wir jetzt den Inhalt der Datei pm-hot-codes.txt. In der ersten Zeile steht:
//== {serialnum}
Damit sagen wir Photo Mechanic, dass es Seriennummern auswerten soll (für die Kameras von Max und Bianca). In der nächsten Zeile bestimmen wir, dass nach den Seriennummern eine bestimmte Stelle der Dateinamenbasis (also Dateiname, ohne Erweiterung) überprüft werden soll, konkret zwei Stellen ab dem siebtletzten Zeichen:
//== {filenamebase:-7,2}
In der nächsten Zeile werden die Namen der von uns definierten Variablen definiert. Diese Zeile startet mit //## und definiert dann zwei User-Variablen vorname bzw. nachname.
//## vorname nachname
In den nächsten drei Zeilen werden jene Werte definiert, nach denen gesucht werden soll und die, wenn sie gefunden werden, durch einen anderen Wert ersetzt werden. Dabei steht in der ersten Spalte der Begriff nachdem gesucht werden soll (die beiden bekannten Seriennummern der Kameras von Max und Bianca bzw. das Kürzel von Petra). In der zweiten Spalte steht dann der dazupassende Vornamen, in der dritten Spalte der Nachname:
BJMA00047 Max Muster
BJMA00011 Bianca Beispiel
PP Petra Paradigma
In der siebten Zeile wird definiert, wie die beiden von uns definierten Variablen reagieren sollen, wenn die Werte nicht gefunden werden. Wir sagen, beide Variablen sollen dann „unbekannt“ als Inhalt haben.
//?? unbekannt unbekannt
Man könnte anstatt der Werte, die wir in den letzten 4 Zeilen definiert haben, auch normale Photo Mechanic Variablen einfügen, dabei aber nicht auf die geschwungenen Klammern vergessen!
Aufgerufen werden die durch hot codes definierten Variablen durch eckige Klammern, in unserem Beispiel also durch [vorname] bzw. [nachname]. Wenn wir also, wie im Beispiel verlangt, im Creator/Photographer Feld die beiden Variablen einfügen,
…dann wird der jeweils passende Vornamen bzw. Nachnamen eingefügt, also z.B. Max Muster (wenn die Seriennummer BJMA00047 in den Exif-Daten gefunden wurde, usw.).
Hot Codes sind eine Art user-definierte Variablen. Anders als die normalen Photo Mechanic Variablen, die mit geschwungenen Klammern aufgerufen werden, z.B. mit {focallength} für die Brennweite, werden die Hot Codes-Variablen mit eckigen Klammern aufgerufen, z.B. mit [nachname] im obigen Beispiel. Hot Code Variablen können auch in Abhängigkeit von den normalen Photo Mechanic Variablen definiert werden.
Zusammenfassung
Photo Mechanic ist ein tolles Werkzeug um Fotos zu betrachten, zu organisieren und zu exportieren. Mehr zu den Grundlagen dieses Programms findest Du in der Beschreibung meines Workflows und in einem PDF als Schritt-für-Schritt Anleitung. Die hier beschriebenen Funktionen der Variablen, des Code Replacements und der Hot Codes erlauben es, sich das Leben beim Verwalten der Fotos wirklich einfacher zu machen. Die grundlegenden Funktionalitäten werden in meinem Workflow beschrieben und auch in diesem PDF. Shortcuts für Photo Mechanic am Mac findest Du hier.
Noch ein Beispiel zum Abschluss.
Die im Beispiel oben erwähnte Petra wählt für ihre Dateinamen, wie oben beschrieben, folgendes Format: yyyymmdd-<Beschreibung des Fotos>-PP-ffff.jpg
Das für die Beschreibung eines Fotos vorgesehene IPTC-Feld „Description/Caption“ hat sie aber nicht befüllt. Um die in <Beschreibung des Fotos> vorhanden Beschreibung in das vorgesehene Feld übernehmen zu können, muss sie dort folgenden Code eingeben:
{filenamebase;9,-7}
Damit wird nur der Inhalte <Beschreibung des Fotos> in dieses Feld übernommen, das Datum am Namensanfang und der Zusatz am Ende, wird weggeschnitten.