darktable page lede image
darktable page lede image

Anteprime

2.2.3. Anteprime

Ogni immagine nella collezione attuale è visualizzata tramite una anteprima sul tavolo luminoso. darktable utilizza una cache delle anteprime usate recentemente in un file su disco e la carica in memoria durante l'avvio. La dimensione di questa cache può essere regolata attraverso l'apposita opzione del menu Mostra Preferenze Globali (vedi Sezione 8.2, «Opzioni principali»).

2.2.3.1. Creazione anteprime

Le anteprime vengono generate quando darktable importa un'immagine per la prima volta, dopo che un'immagine è stata modificata nella camera oscura, oppure quando viene richiamata una «vecchia» immagine la cui anteprima non è più disponibile.

Quando darktable importa un'immagine per la prima volta, la sua anteprima può essere generata in due modi diversi: darktable può tentare di estrarre l'anteprima integrata nell'immagine di input (la maggior parte dei files raw includono un'anteprima creata dalla macchina fotografica) oppure processando l'immagine utilizzando dei valori predefiniti. Puoi definire la modalità con la quale darktable provvederà a generare le anteprime nella finestra Opzioni Interfaccia del menu Preferenze globali (vedi Sezione 8.1, «Opzioni interfaccia»).

L'estrazione dell'anteprima dall'immagine di input ha il vantaggio di essere un'operazione molto veloce. Tuttavia queste anteprime sono state generate da un algoritmo della macchina fotografica e non rappresentano come darktable «vede» quell'immagine. Noterete la differenza non appena aprirete l'immagine in modalità camera oscura: dopo questa operazione darktable sostituirà l'anteprima con una nuova.

Dopo l'importazione di un nuovo rullino darktable costruirà le anteprime per le nuove immagini. Se le anteprime sono molte è possibile che la navigazione all'interno del tavolo luminoso subisca un rallentamento perché ogni volta che vi spostate all'interno della collezione nuove anteprime devono essere generate. Per ovviare a questo problema è possibile uscire da darktable e lanciare il comando darktable-generate-cache. Questo programma provvederà a generare tutte le anteprime mancanti in una sola volta. Per maggiori dettagli vedere Sezione 1.1.3, «Comando darktable-generate-cache».

Dal momento che il file della cache ha una dimensione massima predefinita, potrebbe accadere di raggiungerne il limite. Se, a questo punto, sarà necessario aggiungere nuove anteprime, quelle più vecchie verranno scartate. Tuttavia darktable può conservare tutte le anteprime sul disco sempre che l'opzione 'Gestore disco per la cache delle anteprime' sia stata abilitata nel menu Mostra Preferenze Globali (vedi Sezione 8.2, «Opzioni principali»). L'accesso alle anteprime in questa cache secondaria è più lento di quello alla cache primaria ma, comunque, sempre più veloce dell'operazione di ricostruzione delle anteprime da zero. La dimensione della cache secondaria è limitata solo dallo spazio disponibile su disco.

Le anteprime non vengono mai cancellate dalla cache secondaria. Nel caso in cui vogliate ripulirla dovrete farlo manualmente cancellando le immagini ricorsivamente nella cartella $HOME/.cache/darktable/mipmaps-xyz.d dove xyz è un identificatore alfanumerico della cache. Fatto questo darktable provvederà a rigenerare le anteprime al bisogno, oppure potete farlo manualmente in un'unica operazione con il comando darktable-generate-cache.

Se non attivate la cache su disco e impostate una dimensione troppo piccola per la cache primaria potreste avere dei problemi. I sintomi tipici sono: rigenerazione continua delle anteprime ogni volta che vi spostate all'interno della collezione, immagine dell'anteprima tremolante, o addirittura darktable potrebbe non rispondere più. Una buona scelta potrebbe essere quella di dimensionare la cache a 512MB o più. Tenete in considerazione il fatto che le limitazioni legate ad un sistema a 32-bit vi obbligheranno a scegliere una dimensione della cache parecchio inferiore (vedi Sezione 10.1, «darktable e la memoria» per maggiori dettagli relativi a queste limitazioni).

Dalla versione 2.0 di darktable le anteprime vengono visualizzate tenendo in considerazione la gestione del colore (sempre che l'opzione corrispondente sia stata attivata nel menu Mostra Preferenze Globali (vedi Sezione 8.2, «Opzioni principali»). I colori vengono visualizzati in modo accurato sempre che il vostro sistema sia stato correttamente configurato per permettere a darktable di leggere il profilo del monitor. Per maggiori informazioni relative alla gestione del colore vedi Sezione 3.2.10, «Gestione del colore».

2.2.3.2. Teschi

Se, per una qualche ragione, darktable non è in grado di generare un'anteprima verrà visualizzato un teschio al suo posto. Niente panico!

Questo comportamento è solitamente dovuto a tre ragioni principali.

Una delle cause possibili è che l'immagine di input sia stata rinominata o fisicamente rimossa dal disco. darktable memorizza tutte le immagini importate fin quando non vengono rimosse dal suo database. Nel caso in cui darktable dovesse generare un'anteprima ma non fosse in grado di trovare il file di input, allora disegnerà un teschio al suo posto. Gli utenti dovrebbero rimuovere le immagini dal database (vedi Sezione 2.3.6, «Immagini selezionate») prima di rimuoverle fisicamente dal disco. In alternativa potreste lanciare periodicamente il comando purge_non_existing_images.sh dalla cartella degli strumenti di darktable per ripulire il database.

Un'altra causa potrebbe essere dovuta al fatto che darktable abbia processato un'immagine di input con un'estensione valida ma con un formato file che darktable ancora non supporta. In questo caso darktable tenta di processare l'immagine ma non può portare a termine l'operazione.

La terza e ultima causa che può causare la visualizzazione dei teschi è l'esaurimento della memoria. Se darktable esaurisce la memoria durante la generazione delle anteprime avvisa l'utente e visualizza i teschi. Questa è il caso che più probabilmente accade quando darktable funziona con regolazioni non ottimali specialmente in un ambiente a 32-bit. Vedere anche Sezione 10.1, «darktable e la memoria» per maggiori informazioni.