Порядок байтов 0x49 0x01 в заголовке TIFF найден для EXIF
Для заголовка TIFF его первые 2 байта определяют порядок байтов и либо
-
0x49 0x49
для Intel или -
0x4D 0x4D
для Motorola.
... за которым следует либо
0x00 0x2A
или же
0x2A 0x00
в соответствии с порядком байтов. За ним следует смещение на 4 байта до (первого) каталога (обычно
8
). Это верно для файлов TIFF в целом и для EXIF, встроенных в файлы.
Однако я столкнулся с блоком EXIF (в файле JFIF) с заголовком
0x49 0x01 0x00 0xF0 0x00 0xF0 0x00 0x00
что не имеет смысла, кроме первого байта. Если я предполагаю порядок байтов Intel, игнорируйте
42
подпись и смещение, и вместо этого применяйте смещение к
8
то я могу прочитать данные, как и ожидалось:
- каталог следует с
0x11 0x00
элементы и - первый элемент с идентификатором
0x00 0x01
, тип0x03 0x00
, считать0x01 0x00 0x00 0x00
и данные0xAE 0x12 0x00 0x00
(ширина исходного изображения должна составлять 4782 пикселей).
Кто-нибудь еще сталкивался с этим или подобным незаконным заголовком TIFF? Известно ли, что программа / камера записывает эти нестандартные данные? Если да: документировано ли это где-нибудь?