iCloud: Fotos und Videos anfordern, sortieren und Alben wiederherstellen

von cooper.bin
veröffentlicht am 27.04.2024 aktualisiert am 27.04.2024

Bei meinem Vorhaben, vollständig von der iCloud auf meine lokale Nextcloud zu wechseln, wurde ich vor ein paar Herausforderungen gestellt. Unter anderem auch mit den Medien. Für iCloud hatte ich mittlerweile den 50GB Speicherplan am laufen - und dieser war voll. In Zahlen heißt das rund 21'000 Fotos und Videos auf der Cloud.

Zugegebenermaßen hat die iCloud schon ein paar Vorteile - vor allem, wenn man mehrere Geräte von Apple besitzt. Man sieht auf allen Geräten alle Fotos und Videos der gesamten Timeline. Dank der Vorschaubilder und Laden in voller Auflösung erst bei Abruf wird nur wenig Speicherplatz auf den Endgeräten benötigt. Trotz der Vorteile muss man sich eins bewusst machen: Es werden immer mehr Medien und deshalb wird man mit der Zeit auch immer mehr Speicherplatz benötigen. Außerdem ist man immer von der Internetleitung abhängig um vollen Zugriff auf persönliche Fotos und Videos zu erhalten.

Ich will mich komplett von der iCloud loslösen, neben den Kontakten, dem Kalender, den Notizen habe ich mich dazu entschlossen, all meine Medien herunterzuladen um diese dann lokal und sortiert ablegen zu können. Und das möglichst einfach. Aus diesem Grund habe ich mir ein Tool programmiert: Local iCloud Media Sort

Das Tool ist optimiert den Einsatz zur Wiederherstellung von Fotos, Videos und Alben aus einem exportierten iCloud-Medienbackup. Mehr dazu erfährst du im Kapitel Was macht das Tool?.

Zum Kapitel springen Wege, um Fotos und Videos herunterzuladen

Es gibt mehrere Möglichkeiten, die Medien der iCloud herunterzuladen. Zum einen geht das über die Webseite der iCloud. Dort kann man Fotos und Videos in 1000er Paketen auswählen und direkt herunterladen. Leider sind hier keine Meta-Daten enthalten, was ein Sortieren und Organisieren so gut wie unmöglich macht. Wenn man ein paar Fotos herunterladen möchte ist das aber wahrscheinlich der einfachste Weg.

Zudem ermöglicht der iCloud-Client nach der Installation auf dem eigenen PC die Synchronisierung der Medien in einem spezifischen Ordner. Hat man diesen erstmal eingerichtet werden alle Medien auf der iCloud mit dem lokalen Rechner synchronisiert.

Aus mehreren Gründen habe ich mich für die dritte Option entschieden, obwohl sie weniger offensichtlich ist, ist diese für meine Zwecke die effizienteste Methode: Ich habe eine Kopie meiner Daten angefordert. Diese Methode ist für das Local iCloud Media Sort-Tool essentiell, da nur diese Methode alle benötigten Meta-Informationen und Daten zu allen Alben enthält.

Zum Kapitel springen Anfordern der Daten bei Apple

Neben den Daten zu Kontakten, Kalendern, Karten, Mail, Dateien und Co. kann man bei Apple auch eine komplette Kopie der iCloud Fotos anfordern. Diese Kopie umfasst die gesamte iCloud Mediathek inklusive Fotos, Videos und sogar Daten zu verfügbaren Alben. Letzters war neben den Meta-Daten in den Fotos mit einer der Gründe, warum ich mich für diese Methode entschieden habe.

Apple iCloud Fotos Daten anfordern ><

Der Vorteil an dieser Methode ist, dass wir alle Daten gebündelt herunterladen können. Dabei kann man vor dem Anfordern festlegen, wie groß die einzelnen Datenpakete sein sollen. Hier bietet es sich an die Größe anhand der Internetleitung und Leistung des PCs festzulegen, da diese natürlich nach den Download auch noch entpackt werden müssen.

Apple iCloud Fotos Daten maximale Dateigröße ><

Man kann aus einer der folgenden Dateigrößen wählen:

  • 1 GB
  • 2 GB
  • 5 GB
  • 10 GB
  • 25 GB

Nach dem Absenden der Anfrage wird der Prozess angestoßen. Dies kann je nach Anzahl der Medien lt. Aussage von Apple bis zu sieben Tage dauern. Sobald der Vorgang abgeschlossen ist erhält man eine Email mit den Downloadlinks zu den einzelnen .zip-Archiven in der definierten maximalen Größe. Diese beinhalten dann alle Fotos und Videos der iCloud.

Zum Kapitel springen Local iCloud Media Sort

Zum Kapitel springen Was macht das Tool?

TL;DR: Es sortiert all deine iCloud Fotos und Videos aus einem Backup und stellt dabei auch die Alben wieder her. Die Alben umfassen dabei nicht nur die selbst erstellten Alben, sondern auch die Alben, die automatisch erstellt wurden. Darunter fallen unter anderem automatische Rückblicke, Zusammenfassungen, Ereignisse oder Sammlungen von Orten. Eben alle Alben die in iCloud hinterlegt sind.

Man kann die Power der Apple-KI verwenden, um die automstisch erstellten Alben und Anreicherungen ebenfalls sortiert auf die Seite zu legen. Du kannst gerne direkt zur Installation des Tools wechseln um die Sortierung direkt zu beginnen. Ich empfehle dir vorher dennoch genauer nachzuvollziehen, was mit deinen Medien während des Sortierprozesses passiert.

Zum Kapitel springen Allgemeine Sortierung

Das Tool verwendet ein systematisches Sortierformat, basierend auf dem Jahr und Datum. Es erstellt einen dedizierten Ordner für jedes Jahr, in dem sich Unterordner für jeden Monat befinden. Diese monatlichen Ordner enthalten die Medien, die diesem spezifischen Zeitraum entsprechen. Diese Struktur ermöglicht eine chronologische und intuitive Organisation deiner Mediendateien, sodass es einfach ist, Medien basierend auf der Zeit, in der sie aufgenommen wurden, zu finden.

output
├── 2017
│   └── 09
|   ...
├── 2018
│   ├── 03
│   ├── 04
│   ...
├── 2019
│   ├── 01
│   ├── 02
│   ...
│   ├── 11
│   └── 12
├── 2020
│   ...

Zum Kapitel springen Alben

Zusätzlich zur chronologischen Sortierung von Mediendateien bietet das Tool auch einen Mechanismus für die Handhabung von Fotoalben. Die Alben befinden sich auf derselben hierarchischen Ebene wie die jährlichen Ordner, was eine klare und deutliche Trennung zwischen der standardmäßigen chronologischen Sortierung und der albumorientierten Organisation bietet.

Medien Dateien, die Teil eines Albums sind, werden aus Bequemlichkeit und Klarheit zweimal gespeichert. Erstens erscheinen sie in der standardmäßigen chronologischen Sortierstruktur, organisiert nach Jahr und Monat. Zweitens werden sie zusätzlich auch innerhalb des entsprechenden Albumordners platziert.

alben
    ├── Vereinigte_Arabische_Emirate_Aug_2021_Reise-08076d62
    ├── Vereinigte_Arabische_Emirate_Aug_2021_Reise1-08076d62
    ├── Vierbeinige_Freunde_2019-7d8b843a
    .....
    ├── Sommer_2018-b6dcb1c1
    ├── New_York_Mrz_2020_Reise1-79480de0
    ├── New_York_Mrz_2020_Reise-f8f7d8b9
    └── Zusammen_Im_Laufe_der_Jahre-cebd5c39

Aufgrund der spezifischen Art und Weise, wie Apple Medien und Alben exportiert, ist es nicht ungewöhnlich, dass ein einzelnes Album auf zwei oder mehr verschiedene Ordner aufgeteilt ist. Diese aufgeteilten Alben können jedoch in der Regel relativ leicht anhand ihrer Namen identifiziert und korrigiert werden:

Vereinigte Arabische Emirate Aug 2021 Reise
Vierbeinige Freunde 2019
Sommer 2018
New York Mrz 2020 Reise
Zusammen Im Laufe der Jahre

Ebenfalls ist es normal, dass auf diesen aufgeteilten Alben-Ordnern teilweise auch gleiche Bilder gespeichert sein können. Das ist kein Problem, denn alle gleichen Bilder tragen auch den denselben Namen. Die Alben-Ordner können also einfach gemerged und Dateien überschrieben werden, ohne dass Bilder verloren gehen. So werden lediglich Duplikte eliminiert.

Zum Kapitel springen Dateinamen

Während der Ausführung dieses Tools werden alle Dateien umbenannt und verschoben. Es wird empfohlen, mit Kopien der Dateien zu arbeiten, falls das Ergebnis nicht wie gewünscht ausfällt. Die ursprünglichen Dateinamen werden verworfen und ein einheitliches Namensschema wird für die Dateiumbenennung übernommen:

TT-MM-JJJJ SS-MM-SS ${5-stelliger-Hash}.${Erweiterung}

Diese Namenskonvention stellt sicher, dass jede Datei eindeutig identifiziert wird und gleichzeitig ein klares und konsistentes Format beibehalten wird. Die Struktur des Dateinamens umfasst das Datum und die Uhrzeit, zu der das Foto oder Video aufgenommen wurde, gefolgt von einem 5-stelligen Hash für zusätzliche Einzigartigkeit und schließlich die ursprüngliche Erweiterung der Datei.

Beispiel für umbenannte Dateien:

├── 29-12-2018 21-36-00 4bf70.HEIC
├── 29-12-2018 21-53-00 c0ebf.jpg
├── 29-12-2018 23-16-00 9712d.JPG
├── 29-12-2018 23-43-00 e8377.mp4
├── 30-12-2018 00-09-00 30954.mp4
├── 30-12-2018 00-16-00 89d1a.mp4
├── 30-12-2018 00-19-00 11d45.JPG
├── 30-12-2018 00-48-00 4866c.jpg

Zum Kapitel springen Benchmark

Ich habe die Sortierung meiner Medien mit den folgenden Statistiken abgeschlossen:

  • Insgesamt verarbeitete Medien: 21.079
  • Insgesamt wiederhergestellte Alben: 247

Zum Kapitel springen Datensammlung

Dieser Schritt beinhaltete das Sammeln aller notwendigen Daten aus CSV-Dateien, die die Grundlage für die Sortierung und Albumerstellung bilden.

  • Dauer: 98 Millisekunden

Zum Kapitel springen Mediensammlung

In diesem Schritt werden alle Bilder und Videos gelesen. Dieser Schritt ist entscheidend für die Vorbereitung der Medien für die Sortierung und Zuordnung zu Alben.

  • Dauer: 1,02 Sekunden

Zum Kapitel springen Generierung der Daten

Dies beinhaltete das Generieren einer umfassenden JSON-Datei, die detaillierte Informationen über jede Mediendatei enthält. Die JSON-Datei dient als Referenzpunkt für die Sortierung und Albumerstellung.

  • Details: Zeilen: 105.384; Länge: 3.298.306 Zeichen
  • Dauer: 375 Millisekunden

Zum Kapitel springen Sortierung der Medien und Erstellen der Alben

Der zeitaufwendigste Schritt, bei dem alle Bilder gemäß der vordefinierten Struktur (Jahr und Monat) sortiert und Alben entsprechend den aus den CSV-Dateien erhaltenen Daten erstellt wurden. Dies kann natürlich je nach System und Festplatte variieren.

  • Dauer: 3 Minuten, 44,6 Sekunden

Zum Kapitel springen Fehler bereinigen

Diese Dauer berücksichtigt die Zeit, die für die Behandlung und Behebung von Fehlern im Zusammenhang mit der Sortierung von Medien anhand von Metadaten aufgewendet wurde. Dies deutet auf die Herausforderungen hin, die während des Sortierungsprozesses aufgetreten sind.

  • Dauer: 2,40 Sekunden

Zum Kapitel springen Installation des Tools

  1. Installiere Node.JS für dein System

  2. Lade dir das Git-Repository des Tools herunter

  3. Gehe in den Ordner und setze den Befehl npm install ab, um Abhängigkeiten zu installieren

  4. Lösche .empty Dateien in den folgenden Ordnern:

    • collectedMedia
    • csv_data
    • output
    • source
  5. Entpacke alle .zip-Archive aus dem iCloud-Backup in den source-Ordner
    Das Tool kann Unterordner verarbeiten, sie müssen nur innerhalb des source-Ordners extrahiert werden. Die zip-Archive dürfen sich nicht in dem source Ordner befinden.

  6. Führe diese Befehle in folgender Reihenfolge im heruntergeladenen Ordner aus:
    node 10_collect_csv.js
    node 11_collect_media.js
    node 12_csv_to_json.js
    node 13_sort_by_json.js
    node 00_sort_by_metadata.js

Zum Kapitel springen Konvertieren der Fotos

Wenn du genug Zeit hast, kannst du auch noch den Befehl node 14_convert_heic_to_jpeg.js ausführen. Der Befehl verwendet ein Node-Modul um die Fotos von .heic in .jpg zu konvertieren. Der Nachteil dieses Node-Moduls ist: Es ist nicht das Schnellste!

Das war für mich kein Problem, da ich den Prozess einfach über Nacht auf meinem Homeserver ausgelagert hatte. Ich bin mir jedoch sicher, dass es dort draußen auch schnellere Tools gibt um die Fotos zu konvertieren.


cooper.bin Avatar

cooper.bin

Unterstütze mich und meine Arbeit, so kann ich weiter meiner Leidenschaft nachgehen. Ich lege viel Wert auf Qualität und stecke daher sehr viel Zeit in meine Beiträge. Wenn sie dir gefallen kannst du dir gerne auch meine anderen Artikel anschauen.

Mit PayPal unterstützen

Ich bin auf dem makesmart Discord-Server aktiv. Dort bin ich auch relativ gut erreichbar.

Teile diesen Beitrag



Diese Artikel könnten dich auch interessieren

Nextcloud Backup - Kontakte und Kalender sichern

Erfahre, wie du Nextcloud Kontakte und Kalender sicher exportieren und als Backup speichern kannst. Schütze deine Daten und stelle sicher, dass sie jederzeit zugänglich sind.

cooper.bin am 08.04.2024

Discord WebHook Tutorial - Nachrichten automatisiert versenden

Sende und bearbeite einfach und automatisiert Nachrichten mit Discord Webhooks. Perfekt für die Einbindung von Benachrichtigungen und Drittanbieterdiensten.

cooper.bin am 05.04.2024

Node.JS Software Cluster mit PM2 - Bessere Performance durch Multicore

Node.JS läuft standardmäßig auf nur einem Kern. Mit PM2 kannst du Node.JS-Anwendungen im Cluster-Modus betreiben, um die Leistung und Verfügbarkeit zu verbessern.

cooper.bin am 25.07.2024

NeDB: Eine MongoDB-ähnliche dateibasierte Datenbank für Javascript

Mit NeDB erhältst du eine dateibasierte und lokale NoSQL-Datenbank. Ihre Ähnlichkeit mit MongoDB eröffnet zudem flexible Abfragemöglichkeiten für dein Node.js-Projekt.

cooper.bin am 30.03.2024

MongoDB installieren - Die NoSQL Datenbank auf dem eigenen Server

MongoDB kann neben einer managed Lösung auch einfach und schnell in wenigen Schritten selbst installiert werden. In diesem Tutorial erfährst du wie du MongoDB auf deinem Server installierst

cooper.bin am 01.04.2024