I’m using OpenImage IO and extracting the metadata from an image using the 
extra_attribs() method on ImageSpec. Is there a way to tell OpenImage IO that 
I’m only going to be accessing the metadata and that no image loading or 
decoding needs to occur? 

In particular, the RawInput class, which uses libraw, calls unpack() which is a 
very slow method because of the RAW decoding that needs to take place. However, 
that call to unpack() is being made at the start of the ImageInput::open() 
method and there doesn’t appear to be any flag one can set to disable that. 
Further down that method, it calls through to read_tiff_metadata() which is 
really all that one needs if they are only interested in the metadata.

If I disable libraw support in OpenImageIO, then OIIO defaults to opening a 
Nikon NEF file with another plugin that only loads the metadata since it can’t 
load the raw data. That code path is very fast but I don’t know how to trigger 
it if raw support is built-in (or how to tell the raw plugin itself). 

Thank you. 

Kenny Carruthers
macOS Developer
Corduroy Code Inc,

Oiio-dev mailing list

Reply via email to