Note: This is the "Future Version" of PicurlConcept, which has to be discussed and implemented in the upcoming picurl releases. Here you can access the current version, that applies to picurl 0.0.1
The idea behind picurl
picurl is a photo management application, written in python and will probably be released under a GPL v3 License. It's cross platform, the first releases should run under GNU/Linux and Windows XP/2000. We also want picurl to work under Mac OS X, but this goal will be achieved with a later release.
Why should I use picurl:
see StartPage or the use cases below.
Concepts
Stores
A Store is a storage location (Local HDD folder, FTP,...) where you save your pictures. picurl can currently access images of the following stores:
- FTP
- Flickr accounts
- Picasa Photoalbums
- HTTP
- HTTP Webserver Directory listings
- CD-ROMs/DVDs and other removeable media
Many stores need configuration before you can access them (e.g. username, password, initial directory for FTP server). picurl guides you interactively through the configuration of a store and allows you to save the configuration under an alias. You can then use this alias to re-access the store quickly. For configuration-free stores you can simply use an URI (URL of a HTTP Webserver, filepath,...).
In future versions, picurl recognizes automatically when you want to access photos on removeable media (USB harddrives,..) and prompts you to enter a store identifier. This can be any string (e.g. the caption of the dvd). when you want to re-access the photos, picurl displays this store identifier to help you inserting the right media.
Store indexing
Before you can work on a store, picurl has to index it. during this process, picurl will extract Placeholder Thumbnails (see below) from the images on the store and save them to your picurl user directory (usually within your home directory). In most cases, the indexing process will finish quite fast as only a little portion of the image data has to be read to extract the EXIF Thumbnail, which is used to build the Placeholder Thumbnail.
However, the EXIF header data is just one possible source for Placeholder Thumbnails. depending on the store, picurl determines the optimal way to retrieve thumbnail images. e.g. for photos hosted on flickr it uses of the Flickr Photo URL construction scheme, to get the corresponding thumbnail images.
picurl uses a flexible Plugin architecture for store access, so one can develop plugins to allow picurl accessing other store types.
Placeholder Thumbnails
Besides stores, picurl's functionality is centered around placeholder thumbnails. When accessing a store, picurl will create placeholder thumbnails for all images contained there. a placeholder thumbnail isn't just a down-sized version of a hi-res original photo, it also contains a lot of meta-information of the original photo, e.g.:
- format, dimensions and filesize
- the location (URL)
- EXIF Data
- Tags/Keywords, Caption and Album URL
- further metadata if the image/store provides them
Static Placeholder Thumbnails
Describe Static Placeholder Thumbnails here, with "hard-coded" stores, versions and tags.
Dynamic Placeholder Thumbnails
Describe Dynamic Placeholder Thumbnails here, their stores, versions and tags refer to picurl.org mapping urls -> can easily be changed later.
Benefits of the picurl approach
- The most intuitive photo database ever seen - Your placeholder thumbnail collection also your photo database. You can not only view your photo collection at a glance, but also perform advanced metadata queries. Just add thumbnails by copying them to your .picurl folder or let picurl do the job.
- blazing fast store indexing: In most of the cases, picurl can extract the thumbnail/metainformation from the original image very quickly, because only a small portion of image data has to be read for this. In our tests, the extraction process took about 1 Minute for 60 images on a remote webserver.
- portable: When you copy a placeholder thumbnail, you copy a reference to the original image with all it's metadata! a placeholder thumbnail has a typical filesize from 5 - 20kb, so you can likely send your whole image archive in one e-mail (350 thumbnails require less space than the typical attachment limit of 5 MB).
- quick retrieval of the original photo: just drag a thumbnail on the picurl icon and picurl will download the original photo for you. you can also provide a placeholder thumbnail folder to download a whole range of original photos.
- full metadata import: when creating the placeholder thumbnail, picurl will also save the metadata of the original photo in it. This also includes metadata assigned on photosharing platforms (e.g. tags, geotags, captions,..) created on Flickr or Picasa Webalbums.
- powerful searching/sorting capabilites: sort your images after assigned tags/ EXIF Datetime...
- detect image versions: in future versions, picurl will also be able to detect image versions, i.e. more images derived from one original photo, by analyzing the placeholder thumbnails and metadata.
- metadata synchronisation: in a later release, the metadata contained in the placeholder thumbnail can be sychronised back to the original photo. metadata synchronisation will work bi-directional.
PlaceholderThumbnailSpecification
Post Header Checksum
the post header checksum allows picurl to reliably re-identify an photo if you have renamed it and/or applied new tags for it.
Use Cases
Distribute huge amounts of photos via e-mail
Distributing huge amounts of photos via e-mail used to be a cumbersome task: due to attachment limits, you can only add a few high quality JPEG Images as attachments. Not really suitable when you want to send 100+ images from a photoshooting.
The next logical idea would be to upload the images to a photo sharing site or generate a web gallery with some PHP web gallery software. However, you have to setup an account with the photo sharing site and suffer from upload limits until you are a pro member.
But also your client suffers: he has to navigate in your 100+ pages web gallery and download manually each image he is interested in (You know, the right-click, Save Image as.. procedure). If you didn't configure your gallery properly, it doesn't link to the original images but some scaled-down-by-Imagemagick photos that are insufficient for printing. Also in Flickr and Picasa the "Download Original Image" link is hidden quite well ;-)
With picurl, thinks look much easier: simply upload your photos to an FTP Server with picurl (or you old school FTP Client), re-index the store and mail the placeholder thumbnail folder to your client. your client just needs to download the zero-install version of picurl and do a bit of drag'n'drop.
Your entire photo collection on one USB Stick
picurl is designed to run from portable media. as the placeholder thumbnails also require little disk size, you can manage your entire photo collection from a usb stick. You can easily perform searches across your stores (e.g. all photos from flickr and picasa taken on 12/01/2008) and download the high-res versions on demand. If the high-res version is on an "offline"-store (e.g. DVD that you forgot in your appartment), picurl can save this request and prompt you the next time for it.
Synchronizing metadata between different image versions
the comfortable, AJAX-driven tagging interface of flickr, picasa & co seems tedicious, but has one essential drawback: you only tag the image version uploaded at flickr/picasa, the tags aren't synchronised with the offline version of the picture (e.g. a Camera RAW file on your computer).
In picurl, you assign a tag to the placeholder thumbnail of the image and our tool synchronises this metadata change to all your versions of the image. The online version on flickr gets a new tag, the Camera RAW file on your hard disk a new IPTC keyword.
For maximum data protection and flexibility, picurl can create XMP sidecar files instead of writing metadata directly into the picture. Using this strategy, we prevent data loss due to corrupt file headers and tagging also works for pictures stored on FTP servers.
Publishing Images over low-bandwith connections
Placeholder Thumbnails can also be used to "pre-announce" upcoming photo-downloads. Sounds strange?
Imagine you travel with your super-new Digital SLR Camera and take dozens of high-quality images. Unfortunately, the connection speed in the internet cafés you visit is horrible lame. You start some uploading attempts to your FTP server, but finally you give up. Furthermore, your client needs high-resolution versions that take at least 3 Megabytes per photo.
Gladly, you have picurl running from the flash drive of your camera. it uploads the placeholder thumbnails to your server, which refer to the to-be-uploaded high-res-versions of the image. Each placeholder thumbnail is just 20kb, so the upload is fast also on lame connections.
Your client fetches the placeholder thumbnails with picurl and gets a first visual impression of your material. furthermore, your client's picurl will recognise the pending downloads and automatically download the images once they are available.
