Die GoPro Hero 3+ und Linux – Fallstricke umschiffen

Wie bereits an anderer Stelle hier im Blog erwähnt, tat ich mich ja lange Zeit recht schwer mit der Entscheidung, welche Actioncam ich mir kaufen werde und den Ausschlag gab am Ende die Software, und zwar die, die nicht funktionierte. Diese ließ nämlich die Garmin Virb Elite ausscheiden und die GoPro Hero 3+ dank deutlich größerem Zubehörangebot das Rennen für sich entscheiden. Das Ding wurde also beschafft und schnell wurde alles ausprobiert. Kaum von den ersten Probeaufnahmen zurück, zeigten sich aber unerwartete Probleme. Und die begannen schon mit dem Kopieren der Aufnahmen auf den Rechner. Dieser erkannte nämlich weder die angestöpselte Kamera noch die SD-Karte. 😮

Ein wenig googlen brachte dann die Lösung: Die SD-Karte wird von der Kamera mit exfat formatiert und das kann Linux, in meinem Fall Mint, nicht von Hause aus lesen. Zum Glück lässt sich das aber ganz fix beheben, und zwar im Terminal mittels

sudo apt-get install exfat-fuse exfat-utils

Dieses Problem wäre damit aus der Welt, aber das war bei weitem noch nicht alles. Entsetzt stellte ich fest, das Zeitrafferaufnahmen nicht als Videosequenz gespeichert werden, sondern als Einzelbilder. Nun hatte ich also anstelle einiger kleiner Videos hunderte Fotos auf der SD-Karte und die müssen ja nun irgendwie zu Videos gemacht werden. Zunächst fiel mir dazu keine praktikable Lösung ein, also nutzte ich meine Windows-7-VM und installierte darin die Software von GoPro. Diese konnte die Bilder problemlos als zusammengehörend importieren und exportierte dann Videos. Fein, eigentlich…

Aber eben auch nur eigentlich, denn die exportierten Videos waren allesamt ungültig, weder auf dem lokalen Rechner, noch auf dem Android-Tablet oder direkt bei Youtube ließen sie sich abspielen. Fast schon verabschiedete ich mich verärgert von den Zeitrafferaufnahmen, als mir dann eine andere Idee kam. OpenShot. Meine Idee war folgende: Ich lege einfach die Standarddauer eines Fotos auf der Zeitachse mit 0.2 Sekunden fest, ziehe einen ganzen Sack Bilder gleichzeitig drauf und hoffe, das sie direkt hintereinander abgelegt werden. Und um es gleich vorweg zu nehmen. Das funktioniert natürlich nicht.

Dafür erkannte OpenShot jedoch die aufeinander folgenden Bilder und fragte, ob sie denn als Sequenz eingefügt werden sollen. Nanu, was ist denn nun schon wieder gemeint? Die Hilfe half und um es kurz zu machen, wenn man mehrere durchnummerierte Bilder hat, dann genügt es bei OpenShot, das erste davon als Sequenz zu importieren. Zieht man es dann auf die Zeitachse, ist die Zeitrafferaufnahme am Start. Diese recht einfache Theorie blieb dann aber trotzdem erst einmal Theorie, denn die Dateinamen der Bilder folgten dem Schema G0010xxx.JPG für die erste Zeitrafferaufnahme, G0020xxx.JPG für die zweite, uswusf. Das erkannte OpenShot zwar, konnte dann aber trotzdem nichts damit anfangen und verweigerte die Ausgabe des Videos. Aaaargh!

Aber auch dafür war schnell eine Lösung gefunden: Die Bilder umbenennen. Das geht jhead sei Dank ja ganz fix und ich habe das gleich noch mittels Nemoscript so gemacht, das es auch künftig ganz schnell und einfach zur Verfügung steht. Der kurze Weg, das einmalig zu tun wäre, das Verzeichnis mit den Bildern im Terminal zu öffnen und dann mittels

jhead -nf%04i *.JPG

alle Bilder auf einen Rutsch umzubenennen. In diesem Falle wird 4stellig mit führenden Nullen durchnummeriert. Will man das schneller zur Hand haben, dann bastelt man sich fix ein Script, das unter /home/$BENUTZERNAME/.gnome2/nemo-scripts/ (im Falle von Ubuntu mit Nautilus dann im Verzeichnis nautilus-scripts) abgelegt wird. Das Script sieht dann so aus:

#!/bin/sh
# Bildsequenzen für Zeitrafferaufnahmen OpenShot-kompatibel umbenamsen
for i in `ls $i`; do jhead -nf%04i *.JPG $i ; done

Dem Script gibt man nun noch einen aussagekräftigen Namen und schon hat man es ganz bequem am Start und kann es direkt in Nemo resp. Nautilus verwenden:

Während hier bei Nemo einfach irgendwo in den freien Bereich „gerechtsklickt“ werden muss, ist es bei Nautilus erforderlich mindestens eine Datei ausgewählt zu haben. Und natürlich sollte man vorher die Fotos nach Bildsequenzen getrennt abgelegt haben, denn OpenShot nutzt alle Fotos mit aufeinanderfolgenden Dateinamen die es im Arbeitsverzeichnis findet.

Und mit diesen kleinen Handgriffen hat man eigentlich alle Fallstricke umschifft, die sich in den Weg stellen, normale Fotos und Videos stellen ja ohnehin kein Problem dar und somit hat man auch unter Linux alles was man braucht um mit der GoPro jede Menge Spaß zu haben.

Schrottie

Ich blogge hier seit Anfang 2005 über wechselnde Themen. Zumeist handelt es sich dabei um Linux, Android, Geocaching oder Fotografie, aber zunehmend auch rund ums Fahrradfahren (mit MTB und Rennrad), das ich nach einigen Jahren Pause wieder für mich entdeckt habe. Dabei ist die Themenwahl insgesamt recht selektiv, also ich schreibe immer nur dann, wenn mich etwas wirklich interessiert und/oder bewegt und so kommt es dann auch, das man hier zuweilen auch private Dinge findet. Wer mir für die Arbeit ein kleines Dankeschön zukommen lassen möchte, der kann dies gern über meinen Amazon Wunschzettel tun. :-)

5 thoughts to “Die GoPro Hero 3+ und Linux – Fallstricke umschiffen”

  1. Das mit dem Format gilt natürlich auch für alle Modelle davor.

    Wegen Zeitraffer: das ist eigentlich normal, dass Zeitrafferaufnahmen als einzelne Fotos gespeichert werden, denn die Kamera weiß zwar in welchem Abstand sie die Bilder aufnehmen soll, aber nicht mit welcher Bildrate sie später wiedergegeben werden sollen.

    Ich kann z.B. bei Magix VDL einfach eine Reihe von Bildern reinziehen und die Anzeigedauer der Bilder als Gruppe ändern bzw. eines Bildes ändern und auf alle anwenden. Da spielt der Dateiname dann keine Rolle.

    btw: Ganz früher habe ich Zeitrafferfilme aus Einzelbildern mit VirtualDubMod gemacht. Da war die Nummerierung auch immer wichtig.

    1. Jetzt wo Du es so schreibst klingt es logisch, aber ich ging halt ganz blauäugig davon aus, das die Aufnahme wirklich als Video rauskommt. NMotfalls halt mit der Bildrate, die für herkömmliche Aufnahmen festgelegt wurde.

      Ob es für Avidemux, was ja quasi das abgespeckte Linuxpendant zu VirtualDub ist, auch ein Modul für Zeitraffer gibt, kann ich dabei gar nicht sagen. Aber wie oben erwähnt, OpenShot kommt bestens damit klar, bequemer geht es fast gar nicht mehr. 🙂

  2. Ich hab ja noch die erste Generation der GoPro und hab natürlich auch schon mal mit Zeitrafferaufnahmen experimentiert. Ganz Pinguinlike hab ich das Video natürlich ohne Windows Programm zusammengestellt. Einfach mencoder angeworfen mit den entsprechenden Optionen. Ein kleines Testvideo gibts dort: https://www.youtube.com/watch?v=AtF5BM60Srw (dort stehen auch die verwendete Optionen dabei).

Kommentare sind geschlossen.