In diesem Artikel sehen wir uns an, wie HEIC-Dateien unter Linux und Windows zu Jpgs konvertiert werden können. HEIC ist ein Standard, um Bilder in hoher Qualität und kleiner Dateigröße zu speichern.

Konvertieren mit Windows

Das Konvertieren unter Windows ist recht einfach. Zum einen könnt ihr auf dem iPhone einen „Kompatibilitätsmodus“ aktivieren.

  • Ihr öffnet Einstellungen > Fotos auf dem iPhone
  • Unter „Transfer zu MAC oder PC“ wählt ihr „Automatisch“ aus

Wenn ihr nun mit dem Windows-Explorer auf euer iPhone zugreift, werden euch due Bilder bereits als Jpg geliefert.

Ich hatte allerdings das Problem, dass beim Kopieren großer Datenmengen (50 GB) der Explorer regelmäßig abgestürzt ist oder die USB-Verbindung abbrach.

Als ich die Daten im Modus „Original behalten“ kopiert habe, verlief alles ohne Probleme. Allerdings waren die Bilder nun `.heic` Dateien und konnten nicht durch Die Fotoanzeige dargestellt werden*.

Zur Konvertierung der Bilder habe ich den iMazing HEIC Converter verwendet. Mittels Drag&Drop können die Bilder eingefügt und konvertiert werden.

Meiner Beobachtung nach, müsst ihr nur beim Speicherverbrauch der Anwendung aufpassen. Nachdem ca. 1000 Bilder konvertiert wurden (und die Warteschlange leer war) hat die Anwendung immernoch 2-3 GB Arbeitsspeicher beansprucht. Ich nehme an, dass es hier einen kleinen Memory Leak gibt.

Das iPhone speichert 1000 Dateien (Bilder und Videos) pro Ordner. Sicherheitshalber habe ich die Anwendung nach jedem Ordner beendet und neu gestartet. Bei der Konvertierung sind keine Probleme aufgetreten.

Konvertieren mit Linux

Unter Linux ist die Konvertierung leider etwas komplizierter. Der Modus „Automatisch“ beim iPhone (siehe oben) hat bei mir leider nicht funktioniert. Als ich den Modus aktiviert habe, konnte ich nicht auf den Inhalt des Smartphones zugreifen. Daher war ich gezwungen die Originaldateien (HEIC-Format) zu verwenden.

Fangen wir mit der Vorbereitung an:

  • Als erstes laden wir uns tifig herunter. Dieses Programm konvertiert die HEIF-Dateien zu Jpg
  • Die tar-Datei laden wir herunter, entpacken sie und legen das Programm tifig unter `/usr/bin` ab
  • Nun erstellen wir eine Script-Datei in dem Ordner mit den entsprechenden Dateien. In meinem Beispiel nenne ich sie `create.sh`. Inspiriert wurde ich von einem Snippet auf Github.

In die Datei `create.sh` schreiben wir folgenden Inhalt:

for file in *.heic; do echo "tifig -v -p $file ${file/%.heic/.jpg}"; done

Das Script iteriert über alle HEIC-Dateien und erzeugt den Befehl, wie tifig aufgerufen werden muss. Die eigentliche Ausführung der Konvertierung ist noch nicht gestartet. Daher speichern wir die Ausgabe zuerst in einer Datei.

# Mit cd navigieren wir in den Ordner
cd MyPhotos

# Nun rufen wird das Script auf. Mit dem Pfeil > speichern
# wir den Inhalt in einer anderen Datei
bash create.sh > execute.sh

Der Inhalt befindet sich nun in der Datei `execute.sh` und sollte in etwa folgendermaßen aussehen:

tifig -v -p IMG_4010.heic IMG_4010.jpg
tifig -v -p IMG_4011.heic IMG_4011.jpg
tifig -v -p IMG_4013.heic IMG_4013.jpg
tifig -v -p IMG_4014.heic IMG_4014.jpg

Nun führen wir das „richtige“ Skript aus:

bash execute.sh

Auf der Konsole könnt ihr die Verarbeitung der Dateien nachvollziehen.

bash execute.sh
> Grid is 13920x3822 pixels in tiles 28x8
> Export & decode HEVC: 1227ms
> Saving image: 324ms
> Total Time: 1572ms
> Grid is 4032x3024 pixels in tiles 8x6
> Export & decode HEVC: 258ms
> Saving image: 72ms
> Total Time: 338ms
> Grid is 4032x3024 pixels in tiles 8x6
> Export & decode HEVC: 225ms
> Saving image: 72ms
> Total Time: 304ms
> Grid is 4032x3024 pixels in tiles 8x6
> Export & decode HEVC: 220ms
> Saving image: 72ms
> Total Time: 299ms

In dem Ordner haben wir nun beide Dateien: die originalen HEIC-Dateien und die konvertierten Jpgs.

Bilder nach Konvertierung von Heic zu Jpg im Explorer

Wie man schön im Explorer sehen kann, sind die Heic-Dateien um einiges kleiner als die Jpgs. Manche Programme können direkt mit dem Heic-Format arbeiten. Manche Programme oder Dienste benötigen allerdings klassische Formate.

Fazit

Wir haben uns angesehen, wie unter Windows und Linux HEIF-Dateien zu Jpg umgewandelt werden. Unter Windows ist dies mit ein paar Einschränkungen recht schnell und einfach erledigt.
Unter Linux müssen wir etwas mehr Hand anlegen. Die Aufgabe erledigt tifig sehr gut und mit einem kleinen Script werden die Dateiaufrufe automatisch erzeugt.

Habt ihr andere Werkzeuge, um Heic-Dateien umzuwandeln oder wie ist euer Vorgehen?


* Ich habe gelesen, dass Windows 10 mittels Updates nun HEIF/HEIC nativ unterstützt. Da ich Windows nicht mehr aktiv nutze, habe ich das nicht überprüft. Eventuell ist ein Download im Windows Store notwendig.
Weitere Infos findet ihr hier: Microsoft Blog

Bildnachweis: Pixabay.com

Weiterführende Links: