Synology Photos Automatisches Umbenennen (IMG_JJJJMMTT_HHMMSS) der Bild-Dateien beim Upload vom PC/SD-Karte

CitaroMan

Benutzer
Mitglied seit
02. Jan 2020
Beiträge
51
Punkte für Reaktionen
1
Punkte
8
Hallo zusammen,

eine Frage zu Synology Photos. Bei der alten PhotoStation gab es ein Programm für den PC, mit dem ich komfortabel Bilder aus lokalen Verzeichnissen hochladen und gleichzeit in das Format "IMG_JJJJMMTT_HHMMSS.jpg" umbenennen konnte. In der Photos iOS-App besteht diese Option auch weiterhin. Mangels mit Photos kompatiblem PC-Programm fehlt mir die Möglichkeit am PC. Natürlich könnte ich jetzt ein Feld-Wald-Wiesen Freeware-Tool bemühen und die Dateien vor dem Hochladen gemäß der EXIF-Informationen umbenennen, aber meiner Frau möchte ich diese Option erst gar nicht vorschlagen aufgrund des geringen WAF (= Woman Acceptance Factors ;-)

Habe ich irgendwo eine Option übersehen, mit der ich Dateien vom PC / SD-Karte elegant hochladen und gleichzeitig die Dateien sauber umbenennen kann?

Vielen Dank für Eure Hilfe!
 

Kurt-oe1kyw

Benutzer
Sehr erfahren
Mitglied seit
10. Mai 2015
Beiträge
9.139
Punkte für Reaktionen
1.770
Punkte
314
Habe ich irgendwo eine Option übersehen
Leider nein.
Auch mir fehlt der gute alte windows Photo Station Uploader, wie von dir erwähnt konnte man damit einfach Bilder am PC, auf Speichermedien auswählen, gewünschten Ordner Eintragen und sogar eine fix und fertige Ordnerstruktur genauso 1:1 vom PC auf die Synology transferieren UND die thumbnails wurden auch gleich am PC berechnet und auf die Synology übertragen. Die musste also nichts mehr konvertieren, sondern nur mehr einen neuen Index erstellen.
Bis jetzt gibt es so etwas leider nicht, ebenso DS Photo für windows gibt es leider auch nicht bis jetzt für Synology Photos.
Lediglich die Option in den mobilen Geräten beim Photobackup für die dort befindlichen Bilder bietet die Option mit dem "Umbenennen" der Bilddatei in das "Aufnahmeformat.jpg.

Bisher bleibt also tatsächlich nur NWAF (Non Woman Accetpance Factors :)
Oder, wie von dir schon erwähnt ein Programm deiner Wahl welches vor dem Transfer auf die Synology das Umbenennen vorab durchführt.
Ich hoffe auch immer noch das sie auch für Synology Photos so etwas wie früher den Photo Station Uploader doch irgendwann zur Verfügung stellen, dzt aber leider nein.
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.206
Punkte für Reaktionen
493
Punkte
149
Habe ich irgendwo eine Option übersehen, mit der ich Dateien vom PC / SD-Karte elegant hochladen und gleichzeitig die Dateien sauber umbenennen kann?
Bei mir habe ich einen eigens dafür vorgesehenen Ordner, wo ich die Bilder 'reinwerfe'.
Zyklisch lasse ich dort 'exiftool' (https://exiftool.org/) drüberlaufen, dass mir die Bilder umbenennt und dazu die EXIF-Daten verwendet.
 

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.181
Punkte für Reaktionen
551
Punkte
174
Ja genau so würde ich das auch machen, wie @AndiHeitzer vorschlägt.
Allerdings ist Exiftool nicht von Haus auf dem Synology NAS verfügbar. Das Tool muss man zuerst herunterladen.

Exiftool herunterladen, an einen geeigneten Ort entpacken und einen symbolischen Link z.B. nach /usr/local/bin anlegen.
Somit ist die binary des exiftool direkt in der Commandline verfügbar da sich der Pfad /usr/local/bin bereits in der $PATH Variable befindet.

Exiftool herunterladen und einrichten

Bash:
# 1.) Exiftool in der aktuellen version herunterladen (akteull 12.63)
wget https://exiftool.org/Image-ExifTool-12.63.tar.gz

# 2.) Entpacken nach /volume1/@appstore/
tar xvzf Image-ExifTool-12.63.tar.gz -C /volume1/\@appstore/

# 3.) Verzeichnis Image-Exiftool-12.63.tar.gz umbenennen in Exiftool
mv /volume1/\@appstore/Image-ExifTool-12.63 /volume1/\@appstore/Exiftool

# 4.) setze den Inhaber des Tools rekursiv auf root
chown -r root:root /volume1/\@appstore/Exiftool

# 5.) Erstelle einen symbolischen Link nach /usr/local/bin
ln -s /volume1/\@appstore/Exiftool/exiftool /usr/local/bin/exiftool

# 6.) Überprüfen ob exiftool in der shell auch verfügbar ist
which exiftool
# Ausgabe --> usr/local/bin/exiftool

# 7.) Den Download des Toolsaus Punkt 1.) wieder entfernen
rm Image-ExifTool-12.63.tar.gz

Das Script für deine Anforderung könnte dann so aussehen

Bash:
#!/bin/bash

searchpath=`echo "$1" | sed -e 's#/$##'`

# check source path and abort if not exists
if [ -z "$searchpath" ]; then
  echo No Source Path given... Abort!
  exit 1
fi

prefix=IMG_
extension=jpg

OIFS=$IFS;
IFS=$'\n'

for file in `find $searchpath -type f -regextype sed -regex '.*\.[jJ][pP][gG]$' ! \( -regex '.*IMG_\([0-9]\)\{8\}_\([0-9]\)\{6\}\.[jJ][pP][gG]$' \) ! \( -regex '.*@eaDir/.*' \)`; do
 
  filepath=`dirname $file`
  exifdate=`exiftool -d "%Y%m%d_%H%M%S" -T -DateTimeOriginal $file`

  if [[ "$exifdate" =~ [0-9]{8}_[0-9]{6} ]]; then
    newfile=$filepath/$prefix$exifdate.$extension
    mv $file $newfile
  else
    echo "Exif Date: ($exifdate) Wrong format for File $file"
  fi
done

IFS=$OIFS

exit 0

Das Script an einem beliebigen Ort mit einem geeigneten Namen (z.B. rename_jpg.bash) ablegen.

Nun erstellt man eine Aufgabe über den Aufgabenplaner und ruft hierin das Script auf indem man den Dateipfad als Argument übergibt worin sich die Fotos befinden.

Nehmen wir an, dass es sich hierbei um das Verzeichnis der Photo Station handelt, dann sieht der Aufruf wie folgt aus.

<PFAD_ZUR_SCRIPT_DATEI>/rename_jpg.bash /volume1/Photos

Das lässt man einmal pro Tag z.B. in der Nacht laufen.


Somit umgehst du nun jeglichen "Woman Acceptance Factor" und ihr beide, sowohl du und deine Frau müssen sich beim Upload der Fotos keine Gedanken machen. Es wird alles im Hintergrund umbenannt nachdem neue Bilder hochgeladen wurden und das Script ausgeführt wird.
Die einzige Bedingung ist, dass die Exif Daten in den Bildern vorhanden sind und das ExifTool installiert (vorhanden) ist.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: alexhell

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.181
Punkte für Reaktionen
551
Punkte
174
Bitte das zweite regex pattern ändern in
Bash:
-regex '.*/IMG_\([0-9]\)\{8\}_\([0-9]\)\{6\}\.[jJ][pP][gG]$'

Da fehlt in dem vorherigen Beitrag nämlich noch ein forward slash / vor IMG_
 

CitaroMan

Benutzer
Mitglied seit
02. Jan 2020
Beiträge
51
Punkte für Reaktionen
1
Punkte
8
Na, da hab ich ja etwas Forschungsarbeit vor mir. Klingt aber praktikabel. Danke Euch!
 

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.181
Punkte für Reaktionen
551
Punkte
174
etwas Forschungsarbeit vor mir.
Weshalb Forschungsarbeit? Ich hab dir die Lösung eines Workarounds quasi auf dem Silbertablett serviert. Ist somit ein no-brainer.
Einfach abtippen, ausführen und glücklich sein 🥳
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.206
Punkte für Reaktionen
493
Punkte
149
Weshalb Forschungsarbeit?
Ist doch ganz einfach.
Abtippen und verwenden ist zwar schön und recht, aber ich wäre auch bemüht, die Funktion und das Wirken des Scriptes zu verstehen, um im Fehlerfall mir selber helfen zu können.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat