BigAl007 wrote in post #17528508
Apart from the fact that
Canon CR2 RAW files pretty much all have full resolution previews. So it should really be as easy for Canon to show the preview as it would be to show you a JPEG. After all the embedded preview is basically a JPEG image.
Alan
To prove that the embedded image is smaller than the full pixel count:
Within the RAW file...
0x0000 Header contains the byte ordering, the version and the offset to the RAW picture
computed IFD#0 this part contains the Exif section, which contains the Makernotes section.
Information about picture#0.
computed picture#0 small version of the picture (one fourth the size of the original), compressed in Jpeg
computed IFD#1 Information about picture#1.
computed picture#1 small version of the picture, compressed in Jpeg
computed IFD#2 Information about picture#2.
computed picture#2 small version of the picture, not compressed
in header IFD#3 Information about picture#3, the full dimension RAW image
computed picture#3 RAW image data, lossless compressed in Jpeg (not RGB data!)
2.4 IFD #0
The first IFD is containing a small RGB version of the picture (one fourth the size) compressed in Jpeg, the EXIF part and the Makernote part.
See Exiftool Canon Makernote for all known Makernote values and meaning.
The picture in IFD #0, for the 450D, has 2256x1504 pixels. For the 40D, the dimension is 1936x1288.
the TIFF tags are:
Tag value
Name
Type
Length
Description
0x0100 / 256 imageWidth 3=unsigned_short 1 1936 for the 40D
2256 for the 450D
0x0101 / 257 imageLength 3=unsigned_short 1 1288 for the 40D
1504 for the 450D
0x0102 / 258 bitsPerSample 3=unsigned_short 3 [8,8,8]
0x0103 / 259 compression 3=unsigned_short 1 6=old_jpeg
0x010f / 271 make 2=string 1 "Canon"
0x0110 / 272 model 2=string 1 Examples: "Canon EOS 40D" or "Canon EOS 450D"
0x0111 / 273 stripOffset 4=pointer 1 pointer to the image data in this IFD
0x0112 / 274 orientation 3=unsigned_short 1 1="0,0 is top-left"
0x0117 / 279 stripByteCounts 4=long 1 size in bytes of the image data in this IFD
0x011a / 282 xResolution 5=rational 1 72
0x011b / 283 yResolution 5=rational 1 72
0x0128 / 296 resolutionUnit 3=unsigned_short 1 2="pixels per inche"
0x0132 / 306 dateTime 2=string 20 "2008:02:16 17:02:52"
0x8769 / 34665 EXIF 4=pointer contains the EXIF sub directory
0x8825 / 34853 GPS data 4=pointer points to the GPS data