I probably oversold it; I simply used the libjpeg|tiff|png and libraw facilities available. For tiff it was especially challenging as the library doesn’t easily give up camera parameters. jpg gave me the memory block and I had to cobble together code to read it, which also is working with the relatively new eXif PNG chunk. libraw offers up data they feel is necessary to decode the raw image, not too much else, although recent versions have delved deeper in to the Makernotes. Code:
I offer an 'Exif…" menu item that runs whatever metadata command line tool and displays the output in a listbox that can be filtered grep-style. That’s rather handy, but not closely coupled with the raw processing.