Skip to content

Releases: MEPoss/Google-Photos-Takeout-Fixer

v1.2.8

Choose a tag to compare

@MEPoss MEPoss released this 09 Oct 15:55

Le foto senza JSON vengono ora collocate nella cartella anno/mese in base alla data di scatto già presente nel file (EXIF), invece della data di modifica del file. Se il file non ha una data valida resta dove stava, senza inventare date.

Photos without a JSON are now placed in the year/month folder using the shot date already stored in the file (EXIF), instead of the file's modified date. If the file has no valid date it stays where it was, with no invented dates.

v1.2.7

Choose a tag to compare

@MEPoss MEPoss released this 03 Oct 14:50

Scrive le persone taggate di Google Foto nei file (XMP PersonInImage e Subject), così programmi come Lightroom le leggono come parole chiave.

Writes the people tagged in Google Photos into the files (XMP PersonInImage and Subject), so apps like Lightroom read them as keywords.

v1.2.6

Choose a tag to compare

@MEPoss MEPoss released this 18 Sep 07:52
  • Durante la scansione, la fase di deduplica (calcolo hash sul contenuto dei file candidati duplicati) mostra ora un indicatore di progresso live ("Verifica duplicati: X/Y file candidati controllati") e aggiorna la barra di avanzamento. Prima, essendo il passaggio piu' lento e senza alcun riscontro visibile, poteva sembrare che l'app fosse bloccata su dischi esterni lenti con molti duplicati.

v1.2.5

Choose a tag to compare

@MEPoss MEPoss released this 18 Sep 07:31
  • Il pulsante Annulla ora funziona anche durante la scansione e la deduplica (non solo durante l'elaborazione dei singoli file): prima, se annullato durante il calcolo degli hash per la deduplica (il passaggio piu' lento, puo' durare oltre un'ora su dischi esterni lenti con molti duplicati), la richiesta restava inascoltata finche' quella fase non finiva da sola.

v1.2.4

Choose a tag to compare

@MEPoss MEPoss released this 18 Sep 05:44
  • Le statistiche della run ora distinguono chiaramente "File trovati" (numero grezzo), "Duplicati" (esclusi automaticamente) e "Da elaborare" (il totale effettivo su cui vengono calcolati processati/senza JSON/errori), con una nota esplicativa in interfaccia. In precedenza il conteggio totale era gia' al netto dei duplicati ma senza spiegazione, risultando incoerente rispetto al log di scansione.

v1.2.3

Choose a tag to compare

@MEPoss MEPoss released this 17 Sep 16:42
  • Controllo spazio libero prima di avviare una run reale: se non basta, si ferma subito senza scrivere nulla.
  • Nuovo pulsante Annulla: interrompe la run in modo cooperativo, i file gia' scritti restano intatti, quelli non ancora iniziati non vengono toccati.
  • Deduplica automatica delle foto/video che appartengono a piu' album di Google Foto: Google le esporta una volta per album (stesso contenuto, cartelle diverse), il programma ora le individua (nome+dimensione, poi confermate byte-per-byte con SHA-256) e ne copia una sola copia invece di generare falsi duplicati come foto.jpg/foto_1.jpg/foto_2.jpg. Report dedicato in duplicati.csv.

v1.2.2

Choose a tag to compare

@MEPoss MEPoss released this 17 Sep 08:40
  • Il matching dei JSON ora cerca anche tra le cartelle omonime sparse nelle varie parti di un export Google Takeout diviso (Takeout, Takeout 2, ...): non serve più unire manualmente le cartelle prima di una run.
  • Corretto il naming dei duplicati numerati abbinato alle foto -modificata.
  • Corretto il caso in cui il JSON perde l'estensione originale nel nome (foto senza un nome assegnato dalla fotocamera, es. Parco Nord.jpg -> Parco Nord.supplemental-metadata.json).
  • Il fallback Motion Photo (video+foto sorella) ora cerca il JSON anche in una terza cartella diversa da quella del video e della foto.
  • Verificato su un export reale di 47.081 file: 0 file senza JSON.

v1.2.1

Choose a tag to compare

@MEPoss MEPoss released this 14 Sep 15:22
  • Nuovo report abbinamenti.csv a fine elaborazione: elenca per ogni file media quale JSON di metadati è stato usato (e il file di destinazione).
  • Corretto il matching dei file duplicati per nome nella stessa cartella (es. export(1).mp4, salone(1).jpg): il numero progressivo di Google va cercato dopo il suffisso supplemental-metadata, non subito dopo il nome del file. Prima questi file risultavano erroneamente NO_JSON.

v1.2.0 - fuso orario reale dalle coordinate GPS

Choose a tag to compare

@MEPoss MEPoss released this 13 Sep 20:33
  • Calcola il fuso orario reale dalla posizione GPS della foto invece di trattare il timestamp come un finto UTC locale: ora e data scritte nellEXIF sono quelle davvero viste sull orologio al momento dello scatto, con lo offset numerico corretto (tag OffsetTime)
  • Nuovo campo Fuso orario di riserva nellinterfaccia, usato solo per i file senza GPS nel JSON (default UTC, comportamento identico a prima)
  • README riscritto con una sezione su come ottenere lexport da Google Takeout e una FAQ ampliata

Testato a fondo su file reali (con e senza GPS, fuso personalizzato) sia sullapp macOS che sul pacchetto Debian in CI, incluse le nuove dipendenze (timezonefinder, numpy, h3).

v1.1.4 - correzione bug di matching (data integrity)

Choose a tag to compare

@MEPoss MEPoss released this 13 Sep 11:41

Aggiornamento consigliato per chiunque abbia usato versioni precedenti.

Corregge un bug presente fin dalla prima versione: il fallback di matching per nomi troncati considerava valido un abbinamento se il nome del file e quello del JSON condividevano almeno 8 caratteri iniziali. Su nomi con lo stesso prefisso lungo ma contenuto diverso (es. PXL_20210101_172155927.jpg vs PXL_20210101_172152897.jpg, oppure Giugno 43.JPG vs Giugno 49.JPG), questo poteva abbinare la foto sbagliata, scrivendo data/GPS/descrizione di uno scatto diverso.

Ora si richiede che il nome del JSON sia interamente un prefisso del nome del file (il caso legittimo di troncamento), non solo che condividano N caratteri iniziali.

Se hai gia processato foto con una versione precedente: controlla i file con nomi molto simili tra loro nella stessa cartella (stessa data, stesso prefisso, numerazione sequenziale) prima di fidarti dei metadati scritti.