Questions about raw formats and conversions

Hi, another newbie post (sorry).

Can you help me with three questions about how raw images are handled.

I have a directory containing Canon CR2 images and have auto management on. Am I correct that Photostructure just copies the CR2 images into the new library. Assuming that is the case, then is there a jpg image also created somewhere for the photostructure viewer (and if so where), or does it render on the fly?

Is there a list of formats that photostructure supports.

If there is an image in my original library that is not supported does auto file management just ignore it. I’m hoping to collect everything in a single place and am a little concerned that unrecognized files will be ‘lost’ when creating the new library, but not sure whether there’s a solution to this.

Thanks so much.

No apologies, that’s what this forum is for!

Yes.

The thumbnails and preview images are JPEGs that live in your PhotoStructure library. See https://photostructure.com/faq/library/#where-are-my-librarys-database-settings-and-preview-files

Rendering is all done at import time to make browsing fast.

V0.9.1 uses dcraw, which supports many raw formats.

v1.0 (which I hope to have alpha releases ready in a week or two) switched to libraw, which supports many more recent raw formats. The only raw format that I’m aware of that it doesn’t support yet is cr3, which they say will be ready soon.

Currently, yes, but thinking about it more, it seems like it would be better to import it if possible: most raw images have fairly large embedded JPEG images that I can use for full-screen. I’ll think about this some more: thanks for bringing this to my attention!

Version 0.9.3 and 1.0.0 will import files with the following mimetypes:

  "image/gif",
  "image/jpeg",
  "image/pjpeg",
  "image/png",
  "image/tiff",
  "image/webp"

as well as the following raw types:

const librawSupportedMimeTypes = new Set([
  // TODO: add hasselblad, leaf, leica, phase one
  // See https://www.dechifro.org/dcraw/#cameras
  "image/x-adobe-dng",
  "image/x-canon-cr2",
  // "image/x-canon-cr3", // TODO: these aren't supported by libraw yet
  "image/x-canon-crw",
  "image/x-epson-erf",
  "image/x-fuji-raf", // < both are found in the wild
  "image/x-fujifilm-raf", // < both are found in the wild
  "image/x-kodak-dcr",
  "image/x-kodak-k25",
  "image/x-kodak-kdc",
  "image/x-minolta-mrw",
  "image/x-nikon-nef",
  "image/x-nikon-nrw",
  "image/x-olympus-orf",
  "image/x-panasonic-raw",
  "image/x-panasonic-rw2",
  "image/x-pentax-pef",
  "image/x-samsung-srw",
  "image/x-sigma-x3f",
  "image/x-sony-arw",
  "image/x-sony-sr2",
  "image/x-sony-srf"
])

If HEIF support is installed, image/heif and image/heic mimetypes are also imported.

Thanks. Thinking along these lines, there are other image-related formats that I’d also like to have imported (just copied, not converted) so they are all saved in once place. For example, I have an Insta360 camera that generates INSV files for 360 panoramic info in addition to the DNG files. Would it make sense to include these to the import list (or even better, an option to add files of a custom type to the config file)?

Hmm. Let me think about that.

There are a bunch of filters that are applied to determine if a file is relevant for importing. One of those is dimensions. If ExifTool can extract dimensions from the .insv, then event cleared that hurdle.

The code that copies files into the library needs to be able to extract a “capture at” time in order to know what subdirectory it should copy it into. Do these files have always that metadata? (You can use the info tool to see what PhotoStructure thinks).

Can you send me a DM or email with an example file set (the insv and dng)?

Ideally the files would have matching metadata to merge them into the same asset, and then a different variant (something PhotoStructure knows how to render, like the dng) can be picked as the “primary” or “shown” asset file.

Is it ok to copy a file into your library even if it can’t be rendered by PhotoStructure? (This is what you’re asking, right?)

Thanks. I’ve sent you an email with some example files.

Just copying would be great - I don’t expect Photostructure to render the file. However, a bonus would be to display the file name and/or capture time in the ‘image square’ so at least the user would know it exists?

Thanks for sharing those examples!

I’ve just rebuilt PhotoStructure’s internal list of supported file extensions using the latest version of ExifTool, and the .insp extension was recently added :tada:

With this change, the next version of PhotoStructure will properly import these files. :+1:

(They’ll be rendered as distorted panoramas, though. :neutral_face:)

This is super helpful, thanks!