IrfanView is quite good.
Sample path for shortcut:
"E:\Exiftool\exiftool.exe" -a -u -w txt "E:\image.jpg"
It creates image.txt file with many Exif tags and their values in the same directory as an image. Potentially ExifTool can read hundreds or maybe even more tags.
Maybe metadata is everything except images and thumbnails themselves ?
Actually EXIF consists of three main image file directories IFD (such tables with columns and rows):
1) TIFF (0 IFD)
Each of rows in these directories and in next ones can contain
- "direct" value (data), like camera model, aperture value, number of exposure program etc. or
- pointer (offset) to other IFD or offset to data block (and it's size). Data block can look like an entire list of data or only one row, but larger then row in original IFD or data block (it is used when data size does not fit the rowsize in an original IFD or data block).
One of rows in TIFF IFD contains offset to Exif IFD, one of rows in Exif IFD points in turn at Makernote IFD.
TIFF IFD contains also rows pointing at GPS IFD, Next IFD and Primary Image Data.
Some of other rows also point at next tables or data blocks (lists), and next, and next ones. Especially MakerNote (tons of camera settings, additional smaller images, especially in RAW files). This is an entire tree.
(everything starts from TIFF Header pointing at TIFF IFD)
Most interesting data regarding exposure are located in Exif Directory and some of MakerNote child data blocks.
Some of informations in these tables and datablocks can duplicate. Especialy those in MakerNote (and it's child directiries and datablocks) with TIFF or Exif.
TIFF Header --> TIFF (0 IFD) --> Exif IFD --> MakerNote IFD
--> GPS IFD
--> 1st IFD (Thumbnail Data)
--> Primary Image Data
TIFF, Exif and GPS IFD formats are universal, MakerNore IFD structure (and it's multiple childs) depends on company and it's file format.
schema - Page 15