DngImage only works for certain camera raw version and lossy compression settings - inconsistent

I’d like to using the imaging library to read DNG files and pull out xmp tag data and save the thumbnail image as a JPG. The DNG files are made using the Adobe DNG Converter tool. However, in testing your product to see if it can be a solution I’m seeing varying results using the DngImage class depending on certain settings configured in the DNG Converter tool for LossyCompression and CameraRawVersion. Sometimes the files can be loaded in the DngImage and other combinations of those settings will cause it to fail. In other combinations the file will instead load successfully as a TiffImage. Why is this so inconsistent and what image class should I be using? Is DngImage just buggy? I need to know we can trust the stability of this code before I purchase a license.

Here are test results of images with the different combinations when creating the DNG files from Adobe DNG Converter from raw camera files (test used Aspose.Imaging version 23.10.0):

File Type and attributes Can load using DngImage class? Can load using TiffImage class? Jpg saved of thumbnail from DngImage? Jpg saved of thumbnail from TiffImage?
CameraRawVersion=14, LossyCompressed?=N Yes No, error: Unable to cast object of type ‘Aspose.Imaging.FileFormats.Dng.DngImage’ to type ‘Aspose.Imaging.FileFormats.Tiff.TiffImage’. No, img saved is from Raw (large jpg size) No, exception loading
CameraRawVersion=14, LossyCompressed?=Y No, error: Image loading failed. No, error: Image loading failed. No, exception loading No, exception loading
CameraRawVersion=15.3, LossyCompressed?=N Yes No, error: Unable to cast object of type ‘Aspose.Imaging.FileFormats.Dng.DngImage’ to type ‘Aspose.Imaging.FileFormats.Tiff.TiffImage’. No, img saved is from Raw (large jpg size) No, exception loading
CameraRawVersion=15.3, LossyCompressed?=Y No, error: Unable to cast object of type ‘Aspose.Imaging.FileFormats.Tiff.TiffImage’ to type ‘Aspose.Imaging.FileFormats.Dng.DngImage’ Yes No, exception loading Yes, jpg is thumbnail size

@donp1117 , we will investigate this question and answer.

Hello, @donp1117 ,
Aspose.Imaging has some limitations on DNG format processing. Unfortunately, we do not support Lossy DNG compression.
As concerns recognition of DNG as TIFF, it can take place sometimes due to similarity of image file structure: DNG is compatible to TIFF 6.0 specification. So I would recommend using (DngImage)Image.Load to avoid ambiguous recognition, when loading a DNG file.

Ok, is there any support to extract the embedded thumbnail image from the DNG file? I don’t see any obvious way to do this when browsing the class methods.

@donp1117 , DNG thumbnail extraction also belongs to the format limitation list mentioned above.