PhotoManager manual

Description

Photo Manager is a free program for helping you organize a collection of photographs or other pictures, categorizing them with keywords to make finding particular images easier, and keeping track of metadata for each picture (such as the conditions under which it was made). It's aimed mainly at photographers, but can be used to catalog any kind of image.

Read the notes below before using this program, as some parts of the design are a little unintuitive. Failure to read the this manual can result in you accidentally deleting images. Photo Manager currently makes it quite easy to do that. You have been warned.

Usage

When you run Photo Manager it shows a list of pictures in its main window (once you've added some), each with a thumbnail and a few bits of information. To add some photos select File/Add Pictures... and select the directory to scan for image files. It will find images recursively, in any directories under the one you select, although I recommend adding directories one at a time, since a future version of Photo Manager will probably allow searches to be restricted to images imported in one go. Note that importing the images can take a long time, because it creates small thumbnail versions of them all, and there is currently no 'progress bar' feature, so the program will appear to hang until it is finished.

Photo Manager stores several pieces of metadata for each image, which can be viewed and editted by double clicking on an image's entry in the list in the main window. For example it stores the shutter speed and focal length used, if these are available from the image file. Most digital cameras provide some of this information.

Photo Manager notices if you have, in addition to a normal image file (like a JPEG), a RAW image file from certain types of digital cameras. It doesn't store these as separate files, but instead keeps track of them as effectively an additional part of the main image. This means that when you delete an image Photo Manager will remove both of these files at once. This feature is quite fragile in the current version, and probably needs a lot of work to be really effective. For a list of file extensions recognized as RAW files, see the 'photo-manager' source code and look for @RAW_FILE_EXTENSION.

The list of images only shows a certain number of them at once (currently 100 files), because otherwise it would be too slow to load the list. You can move forwards or backwards through the list in pages, using the buttons on the toolbar. When you select images (and you can select more than one on each page by holding down Control or Shift) they stay selected when you move to another page. This can be confusing, and potentially dangerous, especially if you use the Delete button after forgetting that some images are selected that aren't visible on the current page. Use the Selection/Select None menu item to clear the selection across all pages.

You can assign keywords to images, either by double clicking on a single image and adding keywords in the edit dialog, or by selecting multiple images and using Selection/Add Keyword... from the menu. The keywords can be anything you want, and don't have to just be a single word. For example, you can use keywords to tag images with the names of people who appear in them. For nature photographs you might label them with the names of flowers, or with more general descriptions like 'tree'.

Currently keywords are the only way of searching for images. Type a keyword into the box just under the toolbar and hit Return to restrict the search results to only images with that keyword. If you do this more than once it will show only images that have all the keywords you've entered. Hit Clear on the toolbar to reset the search to show all images. The keyword search box will automatically complete the keywords as you type, although currently the list it uses will not be updated when new keywords are added to images, so you may need to restart the application for this to work.

The Results menu applies to all images shown in the search results listing, whether selected or not, even the ones which aren't listed on the current page of results.

Database Format

Photo Manager stores metadata about images in an SQLite database file. This means that you can easily examine the database (if you understand SQL) using the sqlite command, and you could easily write programs to export or make use of the information.

When Photo Manager starts it checks to make sure that the database and other files it needs exist, and creates them if they don't. It stores everything in a directory called ~/.photo_manager/ in your home directory. Inside there it creates an SQLite2 database called db.sqlite, a configuration file (in the YAML format, which you can edit by hand) called config.yaml, and a tree of directories for storing thumbnail images.

If you want to back up your database (which would be a good idea, in case of hardware problems or a bug in the software deleting things) then you only really need to backup the db.sqlite file. The thumbnails can be recreated from the original images (using the File/Update Thumbnails menu item). It's probably a good idea to backup the configuration file too.

Inside the database is a set of tables which should mostly make sense to anyone who is used to dealing with database design. The schema, together with comments describing how some of the fields should be interpretted, can be found in the Perl code in lib/PhotoManager/Util.pm. Search for the variable called %DB_SCHEMA.

The thumbnails are stored as JPEG images. They have filenames like 00000023.jpg, numbered in decimal for the ID from the 'picture' table in the database. These files are sorted into a set of 676 directories named after uppercase letters in two levels. The two letters used for each file are the letters that would be the last two digits of the ID number if written in base 26, using 'A' for zero. The intention is to avoid having too many files in the same directory, which can cause performance problems on some filesystems.

Author

Geoff Richards <geoff@laxan.com>

Copyright

Copyright 2005, Geoff Richards.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public license, version two or later. A full copy of the license is available from http://www.gnu.org/copyleft/gpl.html

There is no warranty. Use at your own risk.