diff --git a/exifread/__init__.py b/exifread/__init__.py index eb9db6b..29231de 100644 --- a/exifread/__init__.py +++ b/exifread/__init__.py @@ -92,6 +92,12 @@ def process_file( logger.debug("Exif SubIFD at offset %s:", exif_off.values[0]) hdr.dump_ifd(ifd=exif_off.values[0], ifd_name="EXIF", stop_tag=stop_tag) + # EXIF SubIFD + if details and "Image SubIFDs" in hdr.tags: + for subifd_id, subifd_offset in enumerate(hdr.tags.get("Image SubIFDs").values): + logger.debug("Exif SubIFD%d at offset %d:", subifd_id, subifd_offset) + hdr.dump_ifd(ifd=subifd_offset, ifd_name=f"EXIF SubIFD{subifd_id}", stop_tag=stop_tag) + # deal with MakerNote contained in EXIF IFD # (Some apps use MakerNote tags but do not use a format for which we # have a description, do not process these). diff --git a/tests/resources/raw/nikon_z_9_high_efficiency_compressed_dx_cropped_max_overexposed.dng b/tests/resources/raw/nikon_z_9_high_efficiency_compressed_dx_cropped_max_overexposed.dng new file mode 100644 index 0000000..34e942c Binary files /dev/null and b/tests/resources/raw/nikon_z_9_high_efficiency_compressed_dx_cropped_max_overexposed.dng differ diff --git a/tests/resources/raw/nikon_z_9_high_efficiency_compressed_dx_cropped_max_overexposed.nef b/tests/resources/raw/nikon_z_9_high_efficiency_compressed_dx_cropped_max_overexposed.nef new file mode 100644 index 0000000..937c1ab Binary files /dev/null and b/tests/resources/raw/nikon_z_9_high_efficiency_compressed_dx_cropped_max_overexposed.nef differ