Photo Station Lightroom Export Plugin: PhotoStation Upload

Plasma

Benutzer
Mitglied seit
13. Aug 2007
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo Martin,

klasse, es funktioniert!
Es lag tatsächlich an meinem Übereifer, der ExifTool Installationsanleitung über das Nötige zu folgen.

Also: Herzlichen Dank dafür, dass Du nicht nur so ein gutes Tool geschrieben hast, sondern auch noch 1a Unterstützung bietest :)

Noch eine Frage: meine Synology fährt immer die Platten runter, damit sie Strom spart - das "Aufwachen" dauert leider immer länger als die 10 Sekunden stdHttpTimeout. Gibt es eine bessere Methode, darauf zu warten, dass die Synology antwortet, als den Wert auf z.B. 60 Sekunden zu stellen?

Grüße + schönen Sonntag noch,
Axel
 

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Hallo Axel,
ich habe einen Hinweis: don't use "Run this program as administrator" ins Readme aufgenommen. Man kann ja nicht davon ausgehen, dass alle die Hinweise von Phil Harvey zu seinem exiftool so schlampig lesen wie ich. ;)

Wegen dem Timeout: irgendeinen "sinnvollen" Timeout muss ich setzen. 10 Sekunden funktioniert bei mir gut, es spricht aber nichts dagegen den Wert hochzudrehen. Allerdings wartet man dann im Fehlerfall (falscher Servername, Server nicht erreichbar) auch länger. Wenn Du mir einen möglichst kurzen Timeout sagst, der dann auch mit "schlafenden Platten" funktioniert, kommt das ins nächste Release rein..

Grüße, Martin
 

nsan

Benutzer
Mitglied seit
23. Nov 2015
Beiträge
29
Punkte für Reaktionen
0
Punkte
1
Hallo Martin,
Erstmal vielen Dank für deine Mühe und das geniale Plugin. Nutze es seit circa zwei Wochen und es funktionierte soweit wie erwartet.
Eine Sache ist mir aufgefallen - eher aus Zufall. Irgendwie habe ich den Count meiner Kamera zurückgesetzt und die Bilder fangen wieder bei 1 an zu zählen. Da nun teilweise (ich exportiere nur ausgewählte Bilder) 2 Dateien mit dem selben Dateinamen über den Publish Service in der selben Collection auf die Synology exportiert werden sollen, bleiben die neueren Dateien im Status "zu veröffentlichende neue Dateien" stehen, obwohl sie bereits veröffentlicht sind. Das erste Bild heißt bspw. dsc0086.jpg und das zweite Bild wird als dsc0086-2.jpg exportiert. Wie zu vermuten heißen beide Originale dsc0086.raw.

Vielleicht kannst du das mal versuchen nachzustellen und hast evtl. eine Lösung dafür.

Grüße, nsan
 

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Hallo nsan,
ich kann das Problem noch nicht ganz nachvollziehen, aber schon mal soviel:
Bei Publish wird immer der Originalname ggf. mit angepasster Extension für die Zieldatei verwendet und auch so an Lr als. sog. remote-photo-id zurück gemeldet. Dh Du kannst nur eins der beiden Bilder ins selbe Zielverzeichnis publishen.
Und es heißt auch, dass Lr immer nur eine lokale photo-id mit der gleichen remote id verknüpfen kann.
Dementsprechend stimmt es irgendwie, wenn Lr
Das von Dir skizzierte Umbenennen geht m.E. nur bei Export oder macht das Lr schon???

Meine Lösung wäre ein eindeutiger Bildname, z.B durch Vorstellen des Datums im Dateinamen (mach ich gleich beim Import)
Grüße, Martin
 

Plasma

Benutzer
Mitglied seit
13. Aug 2007
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo Martin,

ich melde mich nun endlich zurück wegen des Wertes für den stdHttpTimeout. Nach vielem hin und her scheint für mich 40Sek. ein zuverlässig funktionierender Wert zu sein (alles unter 35s ist stark unzuverlässig).
Das ist nun leider ein recht hoher Wert, weswegen ich nicht sicher bin, ob es allen zugemutet werden sollte. Ich habe eine Synology DS-414j, also eine Spar-Synology, mit 4 Platten - was Zeit kostet ist, dass die 4 Platten nacheinander hochgefahren werden.
Für mich wäre es aber natürlich super, wenn die Änderung in den Master-Branch käme.


Ich habe desweiteren noch eine Frage bzgl. der unterstützen Verzeichnisstrukturen: es gibt ja die Optionen 'Flat Copy' oder 'Mirror Tree relative to local Path', doch beide scheinen leider bei mir nicht ganz zu passen. Da wollte ich nach Rat fragen.
Auf die Synology würde ich gerne das Format "Jahr/Datum" als Verzeichnisse nutzen, also z.B. "2015/2015-11-01", "2015/2015-11-02", usw.

Die Ordnerstruktur auf der Platte ist bei mir aber so:

Rich (BBCode):
D:\Fotos
????Digicam A-70
?   ????2007
?   ?   ????2007_12_21
?   ?   ????2007_12_28
?   ????2008
?       ????2008_03_23
?       ????2008_04_06
????Digicam IXUS 80 IS
?   ????2008
?   ?   ????20081208
?   ?   ????20081231
?   ????2009
?       ????20091230
?       ????20091231
????EOS 40D
?   ????2008
?   ?   ????2008_12_30
?   ?   ????2008_12_31
?   ????2009
?   ?   ????2009_12_29
?   ?   ????2009_12_30
?   ????2010
?   ?   ????2010_12_25
?   ?   ????2010_12_30
(...)

Gibt es die Chance die Jahresverzechnisse und die Datumsverzeichnisse beim Export/Publishen der verschiedenen Kameramodelle zu vereinen (merge)?
Ein einfaches Vereinen wäre schon problematisch, da die Datums-Formate z.T. nicht übereinstimmen... :(
Oder könnten die Verzeichnisse aus den Metadaten (Aufnahmedatum) gewonnen werden?
Ich habe mir den LUA code zwar angeschaut, doch ich bin kein nativer Entwickler und kenne mich mit LUA gar nicht aus, sodass ich schnell an meine Grenzen gestoßen bin.

Jedenfalls klingt das alles für mich recht kompliziert - welche wäre Deine Empfehlung für mich?

Danke + viele Grüße,
Axel
 
Zuletzt bearbeitet:

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Hi Axel,
den Timeout kann ich konfigurierbar machen, ein bißchen Platz ist ja noch im Export/Publish Dialog ;) - im nächsten Release (kann aber noch ein bißchen dauern).

Die Metadaten-basierten Zielverzeichnisse machen schon deutlich mehr Aufwand. Wie schon mal geschrieben: es gibt da keine Lr-API um diese netten Tokens ("{Datum (JJJJ)>>}, usw. } auszuwerten, das müsste ich alles selber programmieren. Abgesehen davon ist die Hauptschleife so gebaut, dass sie nur im Falle von "Tree Mirror" vor jedem Foto-Upload auch CreateDir aufruft. Bei Metadaten-basierten Zielverzeichnissen wäre das dann immer zu machen...

Nichts ist unmöglich, aber doch erheblich. Wenn da einer mit einsteigen will, gerne!

In Deinem Fall ist das größte Problem die Verzeichnisnamen der Ixus 80. Wenn das nicht wäre, könnte man - mit ein bißchen Arbeit - das wie folgt hinkriegen:
- für jede Kamera eine Published Collection Set - ohne zugeordnetes Verzeichnis
- darunter für jedes Jahr eine Smart Published Collection:
  • Foto-Bedingung: Model = Kamera und Datum zwischen 1.1. des Jahres und 1.1.des Folgejahres
  • Target Album: <Jahr>
  • Copy Mode: Tree Mirror relativ zu <Kamera>/<Jahr>

Wie gesagt, mit den Verzeichnissen der Ixus klappt das nicht. Leider gibt es auch kein Bulk-Rename für Verzeichnisse in Lr, nur für Fotos. Evtl. gibt's da ein passendes Plugin.

Grüße, Martin
 

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Hallo Axel,
einen verregneten Urlaubstag, ein bißchen Grübeln und 40 Zeilen Code später:

"Target Album" ist nun dynamisch und kann Element wie:
  • {Date %Y}
  • {Date %Y-%m-%d}
  • {LrFM:cameraModel}
o.ä. enthalten. Das Ganze ist noch sehr Beta, da ich hier eine miserable Internetanbindung habe und nur grob testen kann.

Also hast Du nun den Betatester-Hut auf!

Zu Syntax:
- Metadata-Token werden in { } geklammert
- Date steht für DateTimeOriginal, also Aufnahmedatum
- Date braucht einen Formatstring, ähnlich dem linux date command, genaueres siehe:
http://lightroomsolutions.com/sdk/modules/LrDate.html#LrDate.timeToUserFormat
- Lightroom-unterstützte Metadaten haben das Format {LrFM:<key>} und entsprechen den keys der Lightroom API Funktion photo:getFormattedMetadata(), aber nur die, die string, number oder boolean liefern, siehe:
http://lightroomsolutions.com/sdk/modules/LrPhoto.html#photo:getFormattedMetadata

Ist noch nicht released und dokumentiert, also nicht meckern.;)

In Deinem Fall sollte also das Target Album so aussehen:
Rich (BBCode):
{Date %Y}/{Date %Y-%m-%d}
Als Copy Mode wäre "Flat" angesagt.

Damit kannst Du dann mit einer Definition alles so umsortieren, wie Du es willst.

Bitte Feedback!!!

Sagte ich schon, dass ich Lua und regex total cool finde: 40 Zeilen! Wie peinlich, was für ein Aufriss ich daraus gemacht habe ...

Grüße, Martin
 

Plasma

Benutzer
Mitglied seit
13. Aug 2007
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo Martin,

das ist ja total cool!
Regex habe ich auch in den letzten Jahren zu schätzen gelernt :)

Sorry, dass ich Deinen Eintrag erst heute gesehen habe (mein Backup-System hat sich verabschiedet und ich war die letzten Tage hauptsächlich damit beschäftigt)!

Ich gebe mich gleich ran und gebe so bald es sinnvoll ist Feedback!

Grüße,
Axel


Update mit allererstem Feedback:
-------------------------------------------
Das funktioniert schon ganz gut und die Flexibilität ist mit dem feature enorm!

Ein erstes Problem, auf das ich gestoßen bin (nach erstem sehr kurzem Testen) ist, dass beim Export mehrerer Bilder mit unterschiedlichem Datum alle Bilder in das Verzeichnis mit dem Datum des ersten Bildes gespeichert werden.
Im Logfile sieht es dann in etwa so aus:
Rich (BBCode):
21:26:20: Next photo: C:\Users\Mister\AppData\Local\Temp\B2F0471F-801C-4216-A108-B82BAEF17303\IMG_5120.jpg
21:26:20:   sanitized dstRoot: TEST/2008/2008-12-28
21:26:20:   createTree: Src Path: ./TEST/2008/2008-12-28 from: . to: 
21:26:20:   createTree: dstDir is: /TEST/2008/2008-12-28
21:26:20:   Directory: /TEST already created
21:26:20:   Directory: /TEST/2008 already created
21:26:20:   Directory: /TEST/2008/2008-12-28 already created
21:26:20:   dateTimeOriginal: 2014-08-13 17:37:50
DateTimeOrig passt nicht zum dstDir.

Ich habe eine Analyse angefangen und ich glaube es könnte mit dieser Zeile (696) im PSUploadTask.lua zu tun haben:
Rich (BBCode):
exportParams.dstRoot, isDynamicDstRoot = evaluateDirname(exportParams.dstRoot, srcPhoto)

Wenn ich den code richtig verstehe, wird hier beim ersten Bild der dstRoot ermittelt (über evaluateDirname) und überschrieben. Damit wird der dynamische Pfad schon beim zweiten Bild nicht mehr erneut ausgewertet.
Ich werde versuchen einen Pull-Request zu erstellen, doch ich muss mich vorher etwas intensiver mit dem code auseinandersetzen - ich möchte ja nichts kaputt machen :)
 
Zuletzt bearbeitet:

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Hallo Axel,
sehr gut erkannt! Das ist natürlich Mist so! Das muss an den vielem Bier und Pina Coladas liegen, die ich hier den ganzen Tag trinken muss.
Kann ich heute Abend fixen.

Grüße, Martin
 

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Bugfix liegt auf! Ich habe an drei Stellen auf eine temporäre Variable umgestellt. Wie gesagt, kann nicht wirklich testen hier.

Grüße, Martin
 

Plasma

Benutzer
Mitglied seit
13. Aug 2007
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo Martin,

mann, bist Du schnell - danke, ich werde es heute testen.

Bier und Pina Coladas? Das klingt nach Urlaub oder nach einer lustigen Weihnachtsfeier.
Aber Deine Online-Zeiten verraten eher Urlaub und eine andere Zeitzone. Ich hoffe Du bist in die Wärme gezogen.

Grüße,
Axel
 

Plasma

Benutzer
Mitglied seit
13. Aug 2007
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo Martin,

Also: es funktioniert sehr gut!
Ich bin mit den intensiveren Tests zwar noch nicht durch (komme wohl erst am WE dazu), aber die Verzeichnisse werden nun sauber erzeugt.

Leider bin ich nicht sonderlich schnell dazu gekommen es richtig zu testen, sorry.
Mit Kindern kommt es leider doch oft
1. anders
und
2. als man denkt.

Ich melde mich nachdem ich mehr getestet habe.

Grüße,
Axel
 

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Hallo Axel,
kein Stress! Ich kenn das "Problem" (4 mal, &#55357;&#56842;). Alles hat seine Zeit!
Martin
 

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Version 3.7.0: Dynamische Taget Album Definitonen durch Metadata Platzhalter

Hallo zusammen,

die Version 3.7.0 enthält einige interessante Neuerungen und Bugfixes:
  • Dynamische Target Album Definition durch Metadata Platzhalter: wie hier schon diskutiert, jetzt einigermaßen getestet
  • "Show in PhotoStation" funktioniert jetzt für Photos, Collections und Collection Sets und ruf tatsächlich die zugehörige PhotoStation URL auf.
  • Konfigurierbarer PhotoStation Timeout (falls es mal wieder etwas länger dauert, die Platten aufzuwecken)
  • Video Upload Anpassungen

Zu den Metadata Platzhaltern muss ich noch eine kleine Doku ins Wiki einstellen. Wer schon mal anfangen will, schaue sich die Links im Beitrag #208 an, damit sollte man zurecht kommen. Ich habe aber festgestellt, dass nicht alle Metadaten funktionieren, z.B. {LrFM:country} liefert auch bei GPS-getaggten Fotos nichts zurück. Das ist aber nicht mein Fehler sondern ein bekannter Bug des Lr SDKs.

Viel Spaß damit und wie immer freue ich mich über Feedback!

Martin
 

spreewaelder

Benutzer
Mitglied seit
30. Okt 2012
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
Hallo Zusammen,

bin seit langem stiller Mitleser und wollte mich erst einmal für die ganze Vorarbeit bedanken. Heute bin ich endlich dazu gekommen und habe das Plugin installiert. Leider bin ich nicht sehr weit gekommen, bis die erste Fehlermeldung gekommen ist :(. Könnt Ihr mir vielleicht weiterhelfen und sagen, was ich falsch gemacht habe?

Vielen Dank.

Gruß Michael

fehlermeldung.jpg
 

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
Hallo Michael,
hast Du das Plugin installiert, wie im Readme beschrieben?
Schau Dir mal die Info.lua mit einem Editor an, sieht die so aus, wie auf Github?

Falls nein, ist wahscheinlich irgendwas beim Auspacken schief gegangen.

Grüße, Martin
 

spreewaelder

Benutzer
Mitglied seit
30. Okt 2012
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
@flingo: Vielen Dank für deine schnelle Hilfe. Wieso oft, war die Ursache vor dem Bildschirm ;). Da ich mich nicht extra bei Githun registrieren wollte, habe ich jede Datei einzeln heruntergeladen. Das funktioniert aber anscheinend nicht :(. Nach der Registrierung hat alles einfandfrei funktioniert :).

Nochmals vielen Dank. Werde mich die Woche nochmal hinsetzen und alles durch probieren :).
 

flingo

Benutzer
Mitglied seit
18. Nov 2012
Beiträge
379
Punkte für Reaktionen
18
Punkte
18
"Download ZIP" sollte aber auch ohne Anmeldung bei GitHub gehen.

Grüße, Martin
 

maxx922

Benutzer
Mitglied seit
14. Mai 2014
Beiträge
51
Punkte für Reaktionen
0
Punkte
6
Hi Martin,

auch von meiner Seite ein dickes Lob für die tolle Arbeit. Bin vorgestern auf das Plugin gestossen und finde es spielt in derselben Liga wie die Plugins von Jeffrey Friedl ;-)

Eine Frage: Die Zeit geht voran und der ein oder andere (wie ich auch) besitzen inzwischen UHD Fernseher/Monitore. Die Thumbs werden aber für HD (kurze Seite 1280px) erstellt.
Gibt es eine Möglichkeit auch größere Thumbs zu generieren (also kurze Seite 2160px) ? Oder liegt das an dem Photostation Uploader und ist auf unabsehbare Zeit nicht vorstellbar?
HD Thumbs auf einem UHD Fernseher sehen doch recht "mickrig" aus...

Danke und Gruß,
Gunnar
 


 

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