Przez wiele lat składowałem sobie poskanowane czy zgrane z cyfrowego aparatu zdjęcia w mniej lub bardziej losowo wybranych katalogach. Przeglądać trudno, znaleźć np. zdjęcie małej Kingi na placu zabaw - beznadziejnie trudno. I nie wpadło mi do głowy, że można inaczej.
Tymczasem - Linux dorobił się trzech bardzo ciekawych aplikacji do zarządzania zbiorem zdjęć (czy raczej - dowolnych obrazków). Każda z nich potrafi:
- zindeksować dużą ilość zdjęć i pozwalać je szybko przeglądać (w formie miniaturek),
- wyświetlać zdjęcia w formie pokazów slajdów,
- wprowadzać grupowo proste poprawki, od skorygowania daty po proste modyfikacje graficzne,
- w łatwy sposób tagować zdjęcia, tj. oznaczać je przy pomocy dowolnie dobranych etykiet, jak np. Wesele Kasi (zdarzenie), Ania (osoba), Świnoujście (miejsce), Zachód słońca,
- prezentować zdjęcia w różnych hierarchiach i ujęciach (od kolejności czasowej przez albumy po wyszukiwanie po tagach czy datach)
- importować zdjęcia z aparatów cyfrowych i innych nośników
- zapisywać na CD, eksportować w formie zdatnej do umieszczenia na własnej stronie WWW, wgrywać do serwisów sieciowych.
Są to:
Co ciekawe, choć służące do tego samego celu, są one istotnie różne i niekiedy komplementarne.
F-Spot, choć prosty (i znacznie ustępujący liczbą funkcji konkurentom) jest niesłychanie udaną aplikacją. Po prostu: wybrano właśnie te funkcje, które są do zarządzania dużą bazą zdjęć potrzebne i opakowano je w bardzo ergonomiczny interfejs (z fantastycznym pomysłem paska czasowego). Przeglądanie, wyszukiwanie i tagowanie zdjęć w F-Spocie jest czystą przyjemnością, podobnie jak oglądanie w nim pokazów slajdów. Wszystkie operacje - czy wybierane z menu, czy wynikające z drag&drop - zachowują się intuicyjnie.
F-Spot ma też sporą ilość wtyczek importu i eksportu (największa ilość obsługiwanych serwisów sieciowych). Ma też bardzo fajny pomysł wersji, ładnie obsługujący występowanie orginalnej wersji zdjęcia i wersji przeedytowanych. Umie uruchomić dla wybranego zdjęcia GIMP-a czy inny program graficzny. I ... tyle. Ale właśnie to są funkcje, które są do zarządzania zdjęciami potrzebne.
Najpoważniejszą wadą F-Spota jest dla mnie brak automatycznego wykrywania rozbieżności między bazą danych a strukturą katalogów, wszystkie dokopiowane zdjęcia trzeba ręcznie importować. Przydałaby się też wyszukiwarka duplikatów.
Poważną decyzją przy używaniu F-Spota jest - czy ustawić Zapisywanie metadanych w pliku (okno preferencji). Jeśli opcja ta jest włączona, F-Spot zapisuje wszystkie tagi nie tylko w swojej bazie, ale także w plikach (w ramach tzw. atrybutów EXIF, jest to zapis podobny do zapisywania tytułu piosenki w pliku MP3). Dzięki temu, tagi są widziane np. przy importowaniu zdjęcia do innego programu. Ale - program działa wolniej, niekiedy ponoć zamazuje niektóre informacje pozostawione przez aparat czy skaner, wreszcie - zmienia w ten sposób długości i sumy kontrolne plików, co wpływa na backupy (acz rsync
działa dla takich zmian bardzo efektywnie) czy szukanie duplikatów.
Nieco konfudujące może być też zachowanie się funkcji importu. F-Spot może działać w dwóch trybach:
-
gdy zaznaczymy checkbox Kopiowanie plików do folderu zdjęć zdjęcia zostaną skopiowane do nieco dziwacznej struktury katalogów (rok/miesiąc/dzień, np.
~/Photos/2008/07/12/51230001.jpg
), gubiąc strukturę orginalnego albumu (którą możemy oczywiście zapamiętać tagiem ale ...), przy czym kopiowanie następuje niezależnie od tego skąd importujemy (nawet jeśli importujemy zdjęcia z~/Photos/NowyAlbum
), -
gdy powyższego checkboxa brakuje, F-Spot jedynie zapisze informację o zdjęciach w swoim indeksie, nigdzie ich nie kopiując - nawet gdy mieszczą się na zamontowanym CD-ROMie.
W praktyce trzeba albo pogodzić się z F-Spotową strukturą katalogów, albo ręcznie kopiować zdjęcia w samodzielnie wybrane miejsce i dopiero potem używać funkcji importu bez kopiowania.
Warto wiedzieć, że F-Spotowa baza danych mieści się w pliku ~.gnome2/f-spot/photos.db
. Jest to plik SQLite, można go przejrzeć, np:
$ sqlite3 ~/.gnome2/f-spot/photos.db
SQLite version 3.4.2
Enter ".help" for instructions
sqlite> .tables
exports meta photo_versions rolls
jobs photo_tags photos tags
sqlite> select * from tags;
....
Praktyczne zastosowanie? Widziałem np. kiedyś skrypt synchronizujący tagi między bazami F-Spot i digiKam, sprowadzał się do otwarcia obu baz i kilku poleceń SQL.
Dopisek: ponieważ nie mogłem go znaleźć, napisałem podobny skrypt samodzielnie.
digiKam bije F-Spot na głowę liczbą funkcji, między innymi zawiera pokaźną ilość metod edycyjnych (gros typowych poprawek można wykonać bezpośrednio w nim, bez używania innych aplikacji), potrafi wyszukiwać duplikaty, wykrywa automatycznie nowo wgrane zdjęcia, do tego honoruje strukturę albumów (katalogów). Ustępuje F-Spotowi jedynie nieco mniejszą liczbą eksportów do serwisów sieciowych i brakiem naturalnego pojęcia wersji zdjęcia.
Przede wszystkim jednak, po prostu gorzej wygląda i jest mniej ergonomiczny. Operacje miło realizowane w F-Spocie często wymagają paru kliknięć więcej. Mamy wiele różnych indeksów i metod sortowania ale żaden nie jest tak estetyczny jak F-Spotowy ciąg czasowy. Mamy wiele metod wyszukiwania ale są mniej poręczne niż F-Spotowe klikanie po tagach czy datach.
Za to silne i wygodne opcje edycyjne, w szczególności naprawdę fajny wbudowany edytor, z różnymi funkcjami korekcyjnymi.
Podsumowując: znacznie więcej funkcji, niestety kosztem wygody używania.
Warto zauważyć, że możemy te same zdjęcia zaindeksować równocześnie zarówno F-Spotem, jak digiKamem. Wystarczy nakazać F-Spotowi (w preferencjach) używać katalog ~/Pictures
(albo ~/Obrazki
, zależnie od ustawień językowych KDE) przy którego używaniu upiera się digiKam. digiKam sam zauważy nowe zdjęcia wgrane do tego katalogu (np. zaimportowane F-Spotem).
Korzystam z tego - choć taguję i przeglądam w F-Spocie, odpalam digiKama by wyszukiwać duplikaty czy robić niektóre poprawki.
Podobnie jak F-Spot, digiKam zapisuje swoje dane w pliku SQLite. W tym wypadku jest
to ~/Pictures/digikam3.db
. Struktura danych jest oczywiście inna...
Picasa to całkiem fajny program autorstwa Google, dokładnie ten sam co dostępny pod Windows (instalator Picasy zawiera odpowiednio przykrojoną wersję Wine). Używałem go troszkę, ale jakoś mnie nie przekonał - po części ze względu na brak pełnej integracji z desktopem, po części ponieważ kilka razy zachował się inaczej niż oczekiwałem. Stąd brak dłuższego opisu. Funkcjonalnością jest z grubsza równoważny z digiKamem (ustępując mu jedynie możliwościami eksportu).
Na pewno wart obejrzenia przez osoby, którym nie spodobały się wyżej opisane programy.
Dane Picasy są składowane w mających niejasną strukturę plikach w katalogu ~/.picasa/drive_c/Documents and Settings/username/Local\ Settings/Application\ Data/Google/Picasa2/db/
.