Add new comment

Thank you for your patch, but

Thank you for your patch, but...

1st: to get TIFF/EXIF fields (for your own use) you do not need to patch parse_tiff_ifd/parse_exif code. Just install callbacks.exif_cb and you'll get all tag data into your code.

2nd: Current LibRaw/Github master branch (public snapshot) already parse DNG DefaultCrop tags into

If you need to apply this crop, add LIBRAW_PROCESSING_USE_DNG_DEFAULT_CROP bit to imgdata.params.raw_processing_options

And, yes, this is noted in aug-2017 snapshot announce: support for DefaultCrop Origin/Size tags (add LIBRAW_PROCESSING_USE_DNG_DEFAULT_CROP to raw_processing_options to enable)

3rd: DNG is more complex, than 'simple parse tag from some nested IFD'. Same tags (DefaultCrop* for example) may be specified separately for each IFD (and/or for IFD0). If some DNG file contains several different-resolution renderings (e.g. full data + fast load data), these tags should be applied in accurate way (see identify() function code for that).

DefaultCrop tags may be rational, so getint() is not useful here, getreal(type) is suggested.

-- Alex Tutubalin