Skip to end of metadata
Go to start of metadata

Allgemeines

Versionen

  • Plug-ins wurden in Version 4.0.0 eingeführt. Alles was man benötigt ist picapport.jar oder picapport.exe mit Version 4.0 oder höher.

  • Seit Version 6.2 kann das Zielverzeichnis der Stellvertreterdateien (Shadow-Files) eingestellt werden:
    plugin.shadow.path (Pfad zu den Schattendateien/Substitutdateien(Shadow-Files) (*.$.jpg Dateien))
    Wenn gesetzt, werden beim nächsten Serverstart vorhandene S.jpg Dateien dort hin verschoben und Neue direkt dort angelegt.
    Beispiel: plugin.shadow.path=E\:\\picaport\\shadow

Verfügbare  Plug-ins

Aktuell (Feb 2015) sind folgende Plug-ins verfügbar. Aktualisierte Infos siehe: http://picapport.de/plugins.php

Download Dateiname

Unterstützte
Dateitypen

AnmerkungenWie wir installiert:

PicApportJavaImage
Plugin-1.0.zip
http://picapport.de/
plugins.php

Einfaches Plug-in
basierend auf Java
imageIO und
TwelveMonkeys.

Unterstützte Metadaten:

  • title (enthält
    original Dateiname)
  • .bmp
  • .gif
  • .png
  • .psd
  • .tif
  • .tiff
 
  • Als Option im
    Windows-Installer

oder

  • Zip-Datei des Plug-ins
    in das Plug-in-Verzeichnis
    kopieren
  • PicApport neu starten

PicApportPdfPlugin.zip
http://picapport.de/
plugins.php

Basierend auf Apache's
PDFBox, zeigt dieses
Plug-in die 1. Seite
eines PDF-Dokumentes
angereichert mit
folgenden Metadaten:

  • title (set to
    original filename)
  • creation date
  • creator / author
  • title
  • keywords (tags)
  • description
    (subject)
  • pdf
 
  • Als Option im
    Windows-Installer

oder

  • Zip-Datei des Plug-ins
    in das Plug-in-Verzeichnis
    kopieren
  • PicApport neu starten

PicApportDc
RawPlugin.zip
http://picapport.de/
plugins.php

Basierend auf
Dave Coffin's dcraw 
https://www.cybercom.net/
~dcoffin/dcraw/

sowie Mozillas mozjpeg
https://github.com/
mozilla/mozjpeg
unterstützt
dieses Plug-in nahezu
alle wichtigen
RAW-Formate.

Folgende Metadaten
werden unterstützt:

  • title (set to
    original filename)
  • creation date
  • Camera
  • ISO speed
  • Shutter
  • Aperture
  • Focal length

 

  • .3fr
    Hasselblad RAW

  • .arw
    Sony RAW

  • .cr2
    Canon RAW

  • .crw
    Canon RAW

  • .dcr
    Kodak RAW

  • .dng
    Adobe DNG

  • .erf
    Epson RAW

  • .kdc
    Kodak RAW

  • .mef
    Mamiya RAW

  • .mos
    Leaf Mosaic RAW

  • .mrw
    Minolta RAW

  • .nef
    Nikon RAW

  • .nrw
    Nikon RAW

  • .orf
    Olympus RAW

  • .pef
    Pentax RAW

  • .raf
    Fuji RAW

  • .raw
    Panasonic RAW

  • .rw2
    Panasonic RAW

  • .sr2
    Sony RAW

  • .srf
    Sony RAW

  • .srw
    Samsung RAW

  • .x3f
    Sigma RAW

Für Linux Anwender:
Die Pakete für dcraw und
cjpeg (libjpeg) müssen manuell
installiert werden:

Beispiel für Debian:

  • apt-get install dcraw
  • apt-get install libjpeg-progs


Für OS X Anwender

(1) Homebrew installieren:

 

 

 Es werden Command line tools von X-Code herunter geladen und installiert.
Webseite für Homebrew: https://brew.sh

(2) dcraw installieren

 

Die OS X Doku wurde freundlicherweise von http://itmotions.de zur Verfügung gestellt.


  • Als Option im
    Windows-Installer

oder

  • Zip-Datei des Plug-ins
    in das Plug-in-Verzeichnis
    kopieren
  • PicApport neu starten

PicApportVideoThumbnailPlugin.zip

https://www.picapport.de/de/plugins.php

Unterstützte Betriebssysteme:

  • Linux (Debian, Raspberry, etc..)
  • Windows

Das Plug-in basiert auf
JavaCV (https://github.com/
bytedeco/javacv
)
welches wiederum
OpenCV
(http://opencv.org/)
benutzt.

Das Plug-in erzeugt
eine Stellvertreter .jpg
Datei anhand eines
Frames aus dem Video.

Unterstützte Metadaten:

  • title (enthält
    original Dateiname)

 

  • .mp4, video/mp4
  • .ts, video/MP2T
  • .3gp, video/3gpp
  • .3g2, video/3gpp2
  • .flv, video/x-flv
  • .ogv, video/ogg
  • .avi, video/x-msvideo
  • .webm, video/webm
  • .mpg, video/mpeg
  • .mpeg, video/mpeg
  • .m2v, video/mpeg
  • .wmv, video/x-ms-wmv
  • .mov, video/quicktime
  • .divx,video/divx
  • .mkv, video/x-matroska

Bitte stellen Sie unbedingt sicher das evtl. installierte alte Videoplugin  PicApportOpenCvVideoPluginWindows zu löschen.

Schritte um das evtl. installierte alte PicApportOpenCvVideoPluginWindows Plugin zu deinstallieren:

  • Den PicApport Server stoppen
  • Verzeichnis entfernen: .picapport/plugins/PicApportOpenCvVideoPluginWindows
  • Zipdatei entfernen: .picapport/plugins/PicApportOpenCvVideoPluginWindows.zip
  • Windows-Installer benutzen

oder

  • Zip-Datei des Plug-ins
    in das Plug-in-Verzeichnis
    kopieren
  • PicApport neu starten

PicApportOpenCv
VideoPluginWindows.zip
PicApportOpenCv

VideoPluginLinux.zip
http://picapport.de/
plugins.php

Dieses Plugin gibt
es zur Zeit nur in der
Windows-Variante.
(Linux-Variante in Planung)

Das Plug-in basiert auf
JavaCV (https://github.com/
bytedeco/javacv
)

welches wiederum
OpenCV
(http://opencv.org/)
benutzt.

Das Plug-in erzeugt
eine Stellvertreter .jpg
Datei anhand eines
Frames aus dem Video.

Unterstützte Metadaten:

  • title (enthält
    original Dateiname)

 

  • .mp4, video/mp4
  • .ts, video/MP2T
  • .3gp, video/3gpp
  • .3g2, video/3gpp2
  • .flv, video/x-flv
  • .ogv, video/ogg
  • .avi, video/x-msvideo
  • .webm, video/webm
  • .mpg, video/mpeg
  • .mpeg, video/mpeg
  • .m2v, video/mpeg
  • .wmv, video/x-ms-wmv
  • .mov, video/quicktime
  • .divx,video/divx
  • .mkv, video/x-matroska

Dieses Plugin wurde im Oktober 2017 durch PicApportVideoThumbnailPlugin.zip ersetzt welchen nu auch unter Linux läuft.

  • Zip-Datei des Plug-ins
    abhängig vom
    Betriebssystem in das
    Plug-in-Verzeichnis
    kopieren
  • PicApport neu starten

Installation (manuell ohne Installer)

Bevor ein Plug-in installiert wird, muss bekannt sein, wo das .picapport Verzeichnis des Servers liegt.

Während des Serverstarts wird das Plug-in Verzeichnis etwa wie folgt angezeigt:: MSG  @ 14:56:03.268 Search for plugins in C:\Users\username\.picapport\plugins

Die gewünschten Plug-ins einfach in das  .picapport/plugins Verzeichnis kopieren und den PicApport Server neu starten. Fertig.

Nachdem der Server neu gestartet wurde kann anhand der aktuellen Logdatei in  .picapport/logfiles geprüft werden, ob die Plug-in Installation
erfolgreich war. Abhängig vom Plug-in Typ sollte die Logdatei etwa folgenden Text enthalten:

........
MSG @ 14:53:18.045 Plugin loaded: PicApport GIF plugin 1.0 (c) 2014 Contecon Software GmbH .gif image/gif (hideSubstitutes=true) implements IOtherFileFormat
MSG @ 14:53:18.045 Plugin loaded: PicApport PNG plugin 1.0 (c) 2014 Contecon Software GmbH .png image/png (hideSubstitutes=true) implements IOtherFileFormat
MSG @ 14:53:18.047 Plugin loaded: PicApport PDF plugin 1.0 (c) 2015 Contecon Software GmbH .pdf application/pdf (hideSubstitutes=true) implements IOtherFileFormat
......

Rot zeigt die Dateierweiterung für die dieses Plug-in registriert ist und grün den mime-type der Originaldatei.

Wie es funktioniert

Dies ist eigentlich nur für Administratoren bzw. Programmierer interessant.

Start von PicApport

  • Während des Starts wird das .picapport/plugins Verzeichnis nach .zip Dateien durchsucht.
  • Für jede gefundene .zip Datei wird ein verstecktes Verzeichnis mit dem selben Namen erzeugt und der Inhalt
    der .zip Datei hineinkopiert. Dieses Verzeichnis wird plugin-directory genannt.
  • Dann wird für jede .jar Datei im plugin-directory die Manifest.mf Datei nach einem gültigen PicApport-Plugin: Eintrag untersucht

  • Die init() Methode des Plug-ins wird gerufen (einmalig während des Starts)
    Die folgenden Informationen werden an die Init() Methode übergeben::
    • File pluginDirectory
      Verzeichnis von wo das Plug-in geladen wurde. Diese Information kann vom Plug-in genutzt werden um z.B. weitere
      Konfigurationsdaten zu speichern.
      Ein Plug-in sollte nicht auf Daten außerhalb des Plugin-Directorys zugreifen.

    • Properties props
      Wenn eine .properties Datei mit dem selben Namen wie das Plug-in existiert, wird diese von PicApport geladen und an die init() Methode 
      des Plug-ins übergeben. Ein Plug-in Entwickler sollte sicherstellen, dass props an den Konstruktor der OtherFormatsDescriptor Instanzen
      übergeben wird, die während init() erzeugt werden.
      Das Plug-in kann die Properties nutzen um weitere Konfigurationsdaten zu speichern. Siehe auch PicApportPdfPlugin-src.zip wie dies verwendet werden kann.
      Beispiel: PicApportPdfPlugin.properties:

      Der Eintrag menudownload.text[.iso language] kann verwendet werden um den Text des "Download-Buttons" in der PicApport Slideshow anzupassen.
      Ist kein Text für die aktuelle Sprache konfiguriert, wird der Eintrag (menudownload.text) benutzt. (Solle immer Englisch sein)

    • IPicApportPlugInLogger logger
      Der logger sollte in den privaten Memberdaten der Plug-in Instanz gesichert werden und für Debug Ausgaben verwendet werden.

  • Die init() Methode muss mindestens eine OtherFormatsDescriptor Instanz erzeugen und in  List<OtherFormatsDescriptor> zurückgeben.

    Descriptoren erzeugen

Während des Scannens der Foto Verzeichnisse

  • Wenn PicApport ein Foto-Verzeichnis scannt, werden alle nicht Jpeg-Dateien geprüft ob dafür ein Plug-in registriert wurde.
  • Wurde ein Plug-in registered:
    • PicApport prüft ob eine Stellvertreter-Datei (substitute-file) existiert 
      Die Stellvertreter-Datei ist die jpg Repräsentation der Originaldatei. PicApport fügt .$.jpg an den Namen der Originaldatei an um den Stellvertreter Namen zu erzeugen.
      Wenn die Stellvertreter-Datei nicht existiert oder älter ist als die Originaldatei wird die createJpegFile() Methode des Plug-ins gerufen um die Stellvertreter-Datei zu erzeugen.
      Die folgenden Informationen werden an die createJpegFile() Methode übergeben:
      • File otherFormatFile
        Vollständiger Pfad der Originaldatei

      • File jpegFileToCreate
        Vollständiger Pfad der zu erzeugenden Stellvertreter-Datei

      • CcXMPMetaData metaDataIn
        Optionale Metadaten für die Stellvertreter-Datei. Sind keine Metadaten verfügbar sollte createJpegFile() null zurückgeben.
        Sind Metadaten verfügbar, sollten diese in metaDataIn  gesetzt werden und  metaDataIn sollte anstatt null zurückgegeben werden.
        Siehe auch: Javadoc http://picapport.de/plugins/javadoc/ für weitere Details von CcXMPMetaData .

Programmierung

Plug-ins werden in Java erstellt.

Es muss sichergestellt sein, dass ein picapport.jar mindestens mit Version 4.0.0 im classpath des Compilers eingetragen ist

Ein PicApport Plug-in zu erstellen ist sehr einfach. Einfach eine Java-Klasse erstellen die zwei Methoden implementiert:

  • public List<OtherFormatsDescriptor> init(File pluginDirectory, Properties props, IPicApportPlugInLogger logger)

  • public CcXMPMetaData createJpegFile(File otherFormatFile, File jpegFileToCreate, CcXMPMetaData metaDataIn)

 

Siehe auch: Javadoc http://picapport.de/plugins/javadoc/ für weitere Details.

 

Beispiel PicApport Plug-in for .gif and .png Unterstützung

PicApportJavaImagePlugin

 

Die Manifest Datei

Ein PicApport Plug-in wird durch eine .jar Datei repräsentiert. Diese .jar Datei MUSS eine Manifest.mf Datei enthalten mit einem PicApport-Plugin: Eintrag in welchem die Klasse deklariert wird, welche de.contecon.picapport.plugins.otherformats.IOtherFileFormat implementiert.

 

Manifest.mf

Die Plug-in .zip Datei

Als letzter Schritt wird eine .zip Datei für das Plug-in erstellt. Der Dateiname sollte dem Klassennamen des Plug-ins entsprechen.

Die .zip Datei muss mindestens folgende Dateien beinhalten::

  • Die .jar Datei des Plug-ins
  • Die.properties Datei des Plug-ins

Optionaler Inhalt könnte sein::

  • Weitere .jar Dateien die vom Plug-in benötigt werden
  • Lizenz Informationen
  • Weitere Dateien
  • No labels