Skip to content

Bring Geeqie up to professional workflow standards #2169

@obsidianeagle076

Description

@obsidianeagle076

Setup (please complete the following information):

  • Geeqie version 2.0.1 (Debian 12)

Describe your feature request
Geeqie is very close to being usable for professional-level photography. All that stands in the way are a few UI/UX improvements and performance optimizations.

The current standard for culling large numbers of images prior to import into a database is Photo Mechanic. Photo Mechanic is used as a high-speed light-weight "front end" image sorting tool, to quickly do the initial sort before moving to "heavier" software that can't move though images quickly enough.

Geeqie already has the most important feature from Photo Mechanic: treating RAW+JPEG image pairs as identical images, and using the JPEG to speed up rendering. But Geeqie is still missing a few details.

To bring Geeqie "up to standard," consider the following "user story":

"It's late. I just finished a 12-hour day. I have 10,000 60-megapixel images to go through before I go to bed.

I'm going to run through all 10,000 images, pick the initial selects (i.e the good ones) and give them one star. Then I'm going to go through the one-star images and give the best of those images two stars. Then I'm going to pick out some specific images that need to be sent to the client immediately, and label them red.

Then I'm going to have my RAW editor (Rawtherapee, Adobe Camera Raw, Capture One) or photo database program (Lightroom, Darktable, etc) import the folder, so I can do some RAW post-processing.

My RAW editor or database needs to seamlessly pick up all the marks (star ratings, color labels, etc) that I made on the images. Therefore, everything I did needs to be written to IPTC/XMP in a standards-compliant way."

From this, we can say that Geeqie ought to do the following:

  • be able to go through images INCREDIBLY FAST. If the user has an image open, and then presses page down to get the next image, the next image needs to load instantanously. Milliseconds count when you have 10,000 images to go through! This may mean that Geeqie generates and caches image previews for the entire folder when that folder is open, rather than generating previews when the image is loaded. At the very least, read-ahead needs to extend for many images, and loading cached previews must be imediate.

It's been a long day, you've been up since 5AM, but you've got to get through these pictures before you can call it a night. Any delay in loading images is keeping you awake unnecessarily.

  • Seamlessly filter images by IPTC/XMP star rating, so that the user can go through e.g "all one-star images" again. Right now, you have to manually select all images with a star rating, and then give them a "label" value, and then filter by "label=1."

Geeqie currently supports "Sort by rating," but this is not enough. If you sort by rating, you will lose your place in the "image stack" as soon as you change the rating of the current image. (e.g setting a 1-star image to 2 stars will move it to the top)

  • Apply IPTC/XMP changes to both the JPEG and RAW file, when operating on grouped/stacked JPEG/RAW pairs. Right now it looks like Geeqie is only adding IPTC/XMP star ratings to the JPEG file. This makes it impossible to e.g "Select all 3-star RAW files" when opening the folder in RawTherapee.

Obviously, the RAW file is what gets operated on in later stages of the workflow. Therefore, all metadata changes should be reflected in the RAW file (if necessary using an XMP sidecar file) -- not just the JPEG file.

  • Use standard IPTC/XMP fields (e.g IPTC/XMP rating) natively, instead of relying on proprietary and non-standard "labels." No external software knows about "labels" -- why use them at all, when standard equivalents are available?

  • Support color classes/color labels, and store them in IPTC/XMP. This post from 2007 suggests it's the XMP Label field. This AI-generated page suggests the xmp.xmp.label is the one to use. This forum post references both the Xmp.photomechanic.ColorClass and Xmp.xmp.Label fields. Probably Xmp.xmp.label is the most standard field.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions