LRFFMPEG

User Guide:

LRFFMPEG is a small Lightroom Plugin to support you in the extraction of images from your 4K/6K video files. It leverages FFMPEG, Exiftool & Imagemagick. You can extract all video files in a batch mode or extract selected images in a single file mode. You can download the plugin here where you can always find the latest version.

Prerequisites

FFMPEG & Exiftool are part of the plugin package. For HQ JPEG images an Imagemagick installation is required. Please refer to the Imagemagick Homepage for installation support. Mac users should use Homebrew or MacPorts for installation.

Installation

Installation is pretty easy. Please refer to the Lightroom User Guide for instructions on how to install plugins (File -> Plugin Manager -> add plugin). After installation please configure Path to Imagemagick.

Usage

As mentioned the Plugin supports two modes – Batch & Single. The Plugin will be launched via File -> Plugins

Batch Mode

For Batch mode you simply set the input (where the video files are stored, you can directly read from the SD card if you like) & output directory (where images will be stored). There are different format available. Mini is a format fast extraction and quick viewing of images (downsized jpegs). HQ is creating high quality JPEGs in a two step process. First PNG files will be extracted (lossless) and then converted to HQ JPEGs with Imagemagick. Please be careful with this option as it takes quite a time! For each videofile a subfolder will be created (filename + format). If a directory already exists the respective file will be skipped.

Single Mode

If you follow the suggested workflow (extract minis by batch, them extract the frames you like) in the next step you can use the single file extraction mode. In the dialog you select the file and destination directory. You must set the fps of the video file (30 fps should be normal, options are 25, 30, 50, 60). Select the start frame (look at the filename of the batch extracted files) and how many frames you would like to extract. If you choose an output directory inside your Lightroom library you can easily add the image by synchronizing the folder.

 


Anleitung:

LRFFMPEG ist ein Lightroom-Plugin um die schnelle & optimale Extraktion von Bildern aus den 4K/6K Videostreams zu ermöglichen. Es benutzt im Hintergrund FFMPEG, Exiftool und Imagemagick. Ursprünglich für die GH5/6K gedacht sollte es sich aber für alle Videoformate eignen, egal aus welcher Kamera sie kommen. Zur Zeit prüft das PlugIn ob Videodateien die Endung .MOV oder .MP4 haben. Für andere Kameras muss evtl. die Endung angepasst werden.

Das Plugin unterstützt zwei Arten der Extraktion – Batch und Single. Dazu später mehr. Das PlugIn ist Open Source und steht unter der WTF (What the F..) Lizenz – solange es nicht weiterverkauft wird oder es für den Bau irgendwelcher Waffen verwendet wird könnt ihr damit machen was ihr wollt! Es würde mich freuen wenn der ein oder andere Erweiterungen besteuern kann!

1.) Vorbereitung

Das PlugIn nutzt wie beschrieben weitere Tools um seine Arbeit verrichten zu können. FFMPEG & Exiftool sind bereits im PlugIn enthalten – nach Installation kann also sofort losgelegt werden. Es wird aber noch ein High Quality Modus unterstützt um hochauflösende JPEGs zu bekommen. Dafür wird ImageMagick benötigt. Dies lässt sich nicht in das Paket packen und muss daher zusäzlich installiert werden.

Windows-User:

bitte auf der Seite http://www.imagemagick.org/script/download.php das Windows Packet runterladen und der Installationsanleitung folgen. In meinen Tests habe ich die Version „ImageMagick-7.0.5-6-Q16-x64-dll.exe“ genommen.

Mac User: Bitte nicht über die Seite ImageMagick gehen – es gibt hier bessere Wege zur Installation. Wer bereits Brew oder MacPorts auf seinem Rechner hat kann diesen Schritt überspringen.

a) Brew installieren.

HomeBrew ist ein Paketmanager für Mac und installiert alle möglichen Kommandozeilen Tools und hält diese vor allem up2date. Ebenso werden alle Abhängigkeiten aufgelöst, Pfade & Umgebungsvariablen richtig gesetzt. Ihr spart euch viel Arbeit damit! Zur Installation geht bitte auf die Homebrew Seite und folgt der Anweisung. Dazu müsst ihr das Terminal starten (einfach Suchfeld Terminal eingeben – oben die Lupe im Menü anklicken) und den Installationsbefehl eintippen.

b) Wenn Brew installiert ist kann direkt danach ImageMagick installiert werden:

brew install imagemagick

Wenn ihr eine neue Version braucht dann einfach

brew upgrade imagemagick

Terminal wieder schließen, wird nicht mehr gebraucht. Damit ist der schwerste Teil der ganzen Aktion erledigt!

Installation des PlugIn in Lightroom.

Das PlugIn findet sich hier (dort liegt auch der Quellcode):

https://github.com/Lufthummel/Lumix_Metadata/tree/master/lr_ffmpeg/dist

Ich lade regelmäßig Updates dort hoch. Warnung: das PlugIn enthält ausführbaren Code. Also ladet das PlugIn immer nur von dort herunter. Das ist die einzig sichere Quelle! Solltet ihr über andere URLs das PlugIn angeboten bekommen, Finger weg!!! Das PlugIn entpacken -> Auf dem Mac führt es zu einer Datei namens LumixFFMPEG.lrplugin, unter Win zu einem gleichnamigen Verzeichnis. Bitte darauf achten dass der Unzip Vorgang nicht noch ein Verzeichnis drum rum baut (LumixFFMPEG.lrplugin-> LumixFFMPEG.lrplugin->code). In diesem Fall ist das im Ordner enthaltende Verzechnis das wichtige.

Jetzt gibt es zwei Optionen:

a) Das File bzw. Verzeichnis wird direkt in den LR Plugin Ordner kopiert.

Mac: /Users/your-username/Library/Application Support/Adobe/Lightroom/Modules

Win: C:\Users\your-username\AppData\Roaming\Adobe\Lightroom\Modules Danach muss LR neu gestartet werden.

b) Ihr nutzt den Zusatzmodul-Manager. Schaut hier https://urban-base.net/2013/11/lightroom-plugins-installieren/ da ist das sehr schön beschrieben.

Wenn alles gut gelaufen ist dann solltet ihr das PlugIn im Zusatzmodul-Manager sehen.

Optional: Konfiguration von ImageMagick Wer HQ – JPEGs will muss jetzt noch im Zusatzmodulmanager noch den Pfad zum Tool definieren.

Anwendung

Für die Extraktion habe ich zwei Modi vorgesehen – Batch & Single. Mittels Batch werden einfach alle Videodateien in einem Verzeichnis der Reihe nach abgearbeitet. Im definierten Zielordner wird pro Videodatei automatisch ein Unterordner mit dem Dateinamen der Videodatei (ohne Dateityp) + das Extraktionsformat angelegt. Ist ein Zielordner schon vorhanden wird die Videodatei übersprungen. Jede Bilddatei enthält zusätzlich zum Dateinamen noch die Framenummer. Per Exiftool werden auch die Exifs aus der Videodatei in die Bilder geschrieben. Als Dateitypen stehen zur Auswahl: Mini (runter skalierte JPEGS mit einer Kantenlängen von 1200px) für die schnelle Durchsicht. Zusätzlich JPEG in normaler Qualität, BMP, PNG & TIFF. Achtung – die nicht komprimierten Typen werden sehr groß (über 100MB) und es dauert lange! Der HQ Modus ist ein zwei stufiger Prozess: zuerst werden aus dem Videofile PNGs extrahiert, diese werden dann per Imagemagick in High Quality JPEGs umgewandelt. Achtung – dauert bei vielen Bildern extrem lange und ist sehr rechenaufwendig!

Warum dieser besondere Modus? Die besten Bilder aus Videos bekommt man mit PNG (das einzig auch bei nicht I-Frames verlustfreie Format). Leider sind PNG gigantisch groß und mögen keine Exifs. Mit dem HQ Format bekommt man sehr gute JPEGs mit einer Dateigröße um die 10MB.

Das Ausführen des Batchmodus ist sehr einfach. Im Dateimenü wird das Batchmodus aufgerufen. Anschließend wird der folgende Dialog angezeigt Hier das Quellverzeichnis, Zielverzeichnis & Dateityp auswählen. Je nach Anzahl der Videodatei kann man sich erstmal einen Kaffee holen gehen… Wenn alles sauber funktioniert hat sollte sich im Zielverzeichnis dann die extrahierten Bilder finden.

Die Extraktion aus einer einzelnen Videodatei läuft ähnlich ab. Auch hier der Aufruf wie oben, nur halt „Extract from Videofile“ auswählen. Im folgenden Dialog wählt man jetzt eine Videodatei aus, kein Verzeichnis. Wie üblich muss auch der Zielordner und das Format gesetzt werden. Mini steht hier nicht zur Auswahl. Es gibt zusätzliche Felder. Die Framerate des Videos muss ausgewählt werden (aufgerundet). Das ist wichtig da ich aus Framerate & Starframe die ungefähre Zeit im Video ausrechnen muss. FFMPEG erlaubt keine Framegenaue Extraktion, was bei den Codecs auch technisch schwierig ist. Startframe gibt also den Startpunkt an. Wenn vorher im Batch mit Mini extrahiert wurde kann man anhand der Dateinummer recht elegant sich die richtige Stelle notieren. Maxframes gibt an wie viele Bilder man rund um den gewählten Startframe möchte (im Allgemeinen nur ein paar). Hier macht der HQ Modus dann auch mehr Sinn, die zusätzliche Zeit fällt dann nicht mehr so ins Gewicht.