Cosa fa perdere le anteprime alle foto HEIC in una galleria auto-ospitata?

Eva Wong è la Technical Writer e smanettatrice residente di ZimaSpace. Una geek da sempre con una passione per homelab e software open-source, si specializza nel tradurre concetti tecnici complessi in guide accessibili e pratiche. Eva crede che l'auto-ospitare debba essere divertente, non intimidatorio. Attraverso i suoi tutorial, dà potere alla comunità di demistificare le configurazioni hardware, dalla costruzione del loro primo NAS al dominio dei container Docker.

Le anteprime HEIC scompaiono quando la galleria non riesce a decodificare l’originale, a generare la relativa immagine derivata oppure a consegnare tale derivato al client corrente.

Una galleria self-hosted normalmente conserva l’originale HEIC creando miniature e anteprime JPEG o WebP per browser e telefoni che potrebbero non visualizzare direttamente ogni profilo HEIF. L’originale può rimanere scaricabile anche quando la timeline è vuota, perché la corruzione, un nuovo profilo di codifica del telefono, dimensioni molto elevate, il supporto mancante del decoder, processi worker non riusciti, record delle miniature obsoleti o il caricamento dell’originale lato client influiscono solo sul percorso dei derivati. Diagnostica un singolo elemento, dai byte originali fino all’anteprima generata.

Verifica se il file HEIC originale è integro

Scarica l’originale dalla galleria e confrontane dimensioni e hash con quelli del telefono sorgente, dell’esportazione o del backup. Aprilo in un’applicazione desktop affidabile che supporti HEIC.

Gli utenti di Immich hanno segnalato caricamenti HEIC e DNG dopo i quali le miniature e le anteprime smettevano di essere generate; è quindi importante distinguere un originale danneggiato da una pipeline dei derivati non riuscita. Il sintomo visibile era l’assenza delle miniature dopo il caricamento.

Se l’originale scaricato è troncato o corrotto, ripara il percorso di trasferimento e ricaricalo da una fonte verificata. Se l’originale si apre correttamente, conservalo e continua con i controlli a livello di metadati, decoder e processi.

Confronta i metadati HEIC funzionanti e non funzionanti

Scegli un file HEIC per il quale le anteprime vengono generate e uno per il quale non lo sono. Confronta modello del dispositivo, versione del sistema operativo, dimensioni, profondità di bit, profilo colore, immagini ausiliarie, orientamento, metadati HDR, dimensione del file e marchi del contenitore.

Il nuovo software del telefono può introdurre un profilo che il decoder del server attuale non comprende. Un problema di Immich ha rilevato che i file HEIC di iOS 18 non riuscivano a generare miniature e mostravano messaggi relativi a intestazioni errate, mentre le immagini di versioni precedenti di iOS continuavano a funzionare, isolando una differenza nel nuovo profilo sorgente.

Prova un’altra foto dello stesso telefono dopo aver modificato un’impostazione della fotocamera, solo per classificare il problema. Non convertire né sovrascrivere la libreria originale finché non conosci il profilo incompatibile e la versione del server.

Controlla le dimensioni dell’immagine e i limiti delle risorse

Registra larghezza, altezza, megapixel, dimensione del file e immagini ausiliarie incorporate dell’immagine che presenta il problema. I file HEIC molto grandi possono richiedere molta più memoria durante la decodifica di quanto suggerisca la loro dimensione compressa.

Immich ha documentato file HEIC di grandi dimensioni, pari a 200 megapixel, che non riuscivano a produrre miniature né a visualizzare anteprime. Il limite pratico era rappresentato da dimensioni HEIC estremamente elevate, non dalla normale navigazione nella galleria.

Monitora memoria, CPU, limiti del container ed eventi di esaurimento della memoria del worker delle miniature mentre elabori un singolo file. Se le immagini HEIC più piccole funzionano, aumenta le risorse disponibili per il worker oppure conserva una copia compatibile per l’anteprima senza eliminare l’originale a piena risoluzione.

Leggi il primo errore di decodifica del worker delle miniature

Esegui il processo per le miniature mancanti o la rigenerazione su un singolo elemento interessato e segui il log del microservizio o del worker. Cattura il primo errore relativo a decoder, intestazione, spazio colore, permessi o scrittura, invece dell’errore generico finale.

Le segnalazioni recenti su Immich continuano a mostrare errori nella generazione delle miniature per file HEIC specifici dopo gli aggiornamenti. Un problema del 2026 identifica un errore di elaborazione HEIC associato a un aggiornamento.

Se ogni nuovo file non riesce a essere elaborato dopo il primo errore HEIC, riavvia solo il worker che ha fallito dopo aver conservato i log e verifica lo stato della coda. Non lasciare che un singolo elemento malformato nasconda il fatto che il processo worker abbia smesso di generare tutte le anteprime successive.

Verifica le librerie del decoder e la compatibilità delle versioni

Registra la versione della galleria, l’immagine del container, la libreria di elaborazione delle immagini, il decoder HEIF, l’architettura della CPU e se durante l’aggiornamento sono cambiate build specifiche per l’hardware. Confrontali con l’ultima distribuzione nota come funzionante.

Alcuni problemi HEIC interessano solo un sottoinsieme di immagini, anche all’interno della stessa versione del server. Un problema di Immich segnala che solo determinati file HEIC non riuscivano a essere elaborati, indicando un limite relativo a una funzionalità del formato e non l’assenza completa del supporto HEIC.

Prova lo stesso originale con la versione precedente dell’applicazione o con un’immagine isolata del worker corrente. Esegui il rollback solo partendo da un backup coerente del database e della configurazione; non eseguire il downgrade alla cieca del database di produzione per testare un decoder di immagini.

Separa il problema delle anteprime sul server dal caricamento dell’originale sul client

Apri l’elemento interessato nel client web, nell’app mobile e in una sessione privata del browser. Registra se la miniatura nella timeline, l’anteprima media, il derivato a dimensione completa e il download dell’originale non funzionano in modo indipendente.

Un browser potrebbe non riuscire a visualizzare l’originale HEIC, mentre un’anteprima generata dovrebbe comunque funzionare. Un problema di Safari su Immich descrive un errore nel caricamento dell’originale HEIC, anche se il client poteva ricorrere a un’anteprima o a un derivato a dimensione completa.

Se il problema riguarda un solo client, cancella la risposta memorizzata nella cache del relativo asset e confronta le impostazioni di caricamento dell’originale. Se nessun client dispone della miniatura e il log del worker non mostra alcun file generato, concentra la diagnosi sul server.

Rigenera solo i derivati mancanti dopo aver risolto la causa

Esegui il backup del database e del volume dei metadati, quindi avvia il processo per le miniature mancanti su un piccolo gruppo di elementi interessati. Verifica che crei nuovi derivati senza sostituire gli originali.

Le release di Immich hanno indicato agli utenti con miniature danneggiate di eseguire il processo per le miniature mancanti dopo le correzioni pertinenti, sostenendo una rigenerazione mirata dopo la riparazione invece di eliminare prima l’intero archivio delle miniature.

La guida di ZimaSpace al backup privato delle foto dell’iPhone illustra il requisito fondamentale: conservare e verificare le foto originali indipendentemente dalle anteprime della galleria.

Il problema è risolto quando l’hash dell’originale rimane invariato, il worker genera miniature per il profilo HEIC che presentava il problema, tutti i client supportati caricano il derivato e una nuova foto dello stesso telefono viene elaborata correttamente senza dover ricostruire l’intera libreria.

Supporto e consigli

Altro da leggere

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.