1 2#------------------------------------------------------------------------------ 3# $File: images,v 1.116 2016/03/23 15:29:20 christos Exp $ 4# images: file(1) magic for image formats (see also "iff", and "c-lang" for 5# XPM bitmaps) 6# 7# originally from jef@helios.ee.lbl.gov (Jef Poskanzer), 8# additions by janl@ifi.uio.no as well as others. Jan also suggested 9# merging several one- and two-line files into here. 10# 11# little magic: PCX (first byte is 0x0a) 12 13# Targa - matches `povray', `ppmtotga' and `xv' outputs 14# by Philippe De Muyter <phdm@macqel.be> 15# URL: http://justsolve.archiveteam.org/wiki/TGA 16# Reference: http://www.dca.fee.unicamp.br/~martino/disciplinas/ea978/tgaffs.pdf 17# Update: Joerg Jenderek 18# at 2, byte ImgType must be 1, 2, 3, 9, 10 or 11 19# ,32 or 33 (both not observed) 20# at 1, byte CoMapType must be 1 if ImgType is 1 or 9, 0 otherwise 21# or theoretically 2-128 reserved for use by Truevision or 128-255 may be used for developer applications 22# at 3, leshort Index is 0 for povray, ppmtotga and xv outputs 23# `xv' recognizes only a subset of the following (RGB with pixelsize = 24) 24# `tgatoppm' recognizes a superset (Index may be anything) 25# 26# test of Color Map Type 0~no 1~color map 27# and Image Type 1 2 3 9 10 11 32 33 28# and Color Map Entry Size 0 15 16 24 32 290 ubequad&0x00FeC400000000C0 0 30# skip more garbage by looking for positive image type 31>2 ubyte >0 32# skip some compiled terminfo by looking for image type less equal 33 33>>2 ubyte <34 34# skip arches.3200 , Finder.Root , Slp.1 by looking for low pixel sizes 15 16 24 32 35>>>16 ubyte <33 36# skip more by looking for pixel size 0Fh 10h 18h 20h 37>>>>16 ubyte&0xC0 0x00 38# skip 260-16.ico by looking for no color map 39>>>>>1 ubyte 0 40# implies no first map entry 41>>>>>>3 uleshort 0 42>>>>>>>0 use tga-image 43# Color Map 44>>>>>1 ubyte >0 45>>>>>>0 use tga-image 46# display tga bitmap image information 470 name tga-image 48>2 ubyte <34 Targa image data 49!:mime image/x-tga 50!:apple ????TPIC 51# normal extension .tga but some Truevision products used others: 52# tpic (Apple),icb (Image Capture Board),vda (Video Display Adapter),vst (NuVista),win (UNSURE about that) 53!:ext tga/tpic/icb/vda/vst 54# image type 1 2 3 9 10 11 32 33 55>2 ubyte&0xF7 1 - Map 56>2 ubyte&0xF7 2 - RGB 57# alpha channel 58>>17 ubyte&0x0F >0 \bA 59>2 ubyte&0xF7 3 - Mono 60# type not found, but by http://www.fileformat.info/format/tga/corion.htm 61# Compressed color-mapped data, using Huffman, Delta, and runlength encoding 62>2 ubyte 32 - Color 63# Compressed color-mapped data, using Huffman, Delta, and RLE. 4-pass quadtree- type process 64>2 ubyte 33 - Color 65# Color Map Type 0~no 1~color map 66>1 ubyte 1 ( 67# first color map entry, 0 normal 68>>3 uleshort >0 \b%d- 69# color map length 0 2 1dh 3bh d9h 100h 70>>5 uleshort x \b%d) 71# 8~run length encoding bit 72>2 ubyte&0x08 8 - RLE 73# gimp can create big pictures! 74>12 uleshort >0 %d x 75>12 uleshort =0 65536 x 76# image height. 0 interpreted as 65536 77>14 uleshort >0 %d 78>14 uleshort =0 65536 79# Image Pixel Size 15 16 24 32 80>16 ubyte x x %d 81# X origin of image. 0 normal 82>8 uleshort >0 +%d 83# Y origin of image. 0 normal; positive for top 84>10 uleshort >0 +%d 85# Image descriptor: bits 3-0 give the alpha channel depth, bits 5-4 give direction 86>17 ubyte&0x0F >0 - %d-bit alpha 87# bits 5-4 give direction. normal bottom left 88>17 ubyte &0x20 - top 89#>17 ubyte ^0x20 - bottom 90>17 ubyte &0x10 - right 91#>17 ubyte ^0x10 - left 92# some info say other bits 6-7 should be zero 93# but data storage interleave by http://www.fileformat.info/format/tga/corion.htm 94# 00 - no interleave;01 - even/odd interleave; 10 - four way interleave; 11 - reserved 95#>17 ubyte&0xC0 0x00 - no interleave 96>17 ubyte&0xC0 0x40 - interleave 97>17 ubyte&0xC0 0x80 - four way interleave 98>17 ubyte&0xC0 0xC0 - reserved 99# positive length implies identification field 100>0 ubyte >0 101>>18 string x "%s" 102# last 18 bytes of newer tga file footer signature 103>18 search/4261301/s TRUEVISION-XFILE.\0 104# extension area offset if not 0 105>>&-8 ulelong >0 106# length of the extension area. normal 495 for version 2.0 107>>>(&-4.l) uleshort 0x01EF 108# AuthorName[41] 109>>>>&0 string >\0 - author "%-.40s" 110# Comment[324]=4 * 80 null terminated 111>>>>&41 string >\0 - comment "%-.80s" 112# date 113>>>>&365 ubequad&0xffffFFFFffff0000 !0 114# Day 115>>>>>&-6 uleshort x %d 116# Month 117>>>>>&-8 uleshort x \b-%d 118# Year 119>>>>>&-4 uleshort x \b-%d 120# time 121>>>>&371 ubequad&0xffffFFFFffff0000 !0 122# hour 123>>>>>&-8 uleshort x %d 124# minutes 125>>>>>&-6 uleshort x \b:%.2d 126# second 127>>>>>&-4 uleshort x \b:%.2d 128# JobName[41] 129>>>>&377 string >\0 - job "%-.40s" 130# JobHour Jobminute Jobsecond 131>>>>&418 ubequad&0xffffFFFFffff0000 !0 132>>>>>&-8 uleshort x %d 133>>>>>&-6 uleshort x \b:%.2d 134>>>>>&-4 uleshort x \b:%.2d 135# SoftwareId[41] 136>>>>&424 string >\0 - %-.40s 137# SoftwareVersionNumber 138>>>>&424 ubyte >0 139>>>>>&40 uleshort/100 x %d 140>>>>>&40 uleshort%100 x \b.%d 141# VersionLetter 142>>>>>&42 ubyte >0x20 \b%c 143# KeyColor 144>>>>&468 ulelong >0 - keycolor 0x%8.8x 145# Denominator of Pixel ratio. 0~no pixel aspect 146>>>>&474 uleshort >0 147# Numerator 148>>>>>&-4 uleshort >0 - aspect %d 149>>>>>&-2 uleshort x \b/%d 150# Denominator of Gamma ratio. 0~no Gamma value 151>>>>&478 uleshort >0 152# Numerator 153>>>>>&-4 uleshort >0 - gamma %d 154>>>>>&-2 uleshort x \b/%d 155# ColorOffset 156#>>>>&480 ulelong x - col offset 0x%8.8x 157# StampOffset 158#>>>>&484 ulelong x - stamp offset 0x%8.8x 159# ScanOffset 160#>>>>&488 ulelong x - scan offset 0x%8.8x 161# AttributesType 162#>>>>&492 ubyte x - Attributes 0x%x 163## EndOfTGA 164 165# PBMPLUS images 166# The next byte following the magic is always whitespace. 167# strength is changed to try these patterns before "x86 boot sector" 1680 name netpbm 169>3 regex/s =[0-9]{1,50}\ [0-9]{1,50} Netpbm image data 170>>&0 regex =[0-9]{1,50} \b, size = %s x 171>>>&0 regex =[0-9]{1,50} \b %s 172 1730 search/1 P1 174>0 use netpbm 175>>0 string x \b, bitmap 176!:strength + 45 177!:mime image/x-portable-bitmap 178 1790 search/1 P2 180>0 use netpbm 181>>0 string x \b, greymap 182!:strength + 45 183!:mime image/x-portable-greymap 184 1850 search/1 P3 186>0 use netpbm 187>>0 string x \b, pixmap 188!:strength + 45 189!:mime image/x-portable-pixmap 190 1910 string P4 192>0 use netpbm 193>>0 string x \b, rawbits, bitmap 194!:strength + 45 195!:mime image/x-portable-bitmap 196 1970 string P5 198>0 use netpbm 199>>0 string x \b, rawbits, greymap 200!:strength + 45 201!:mime image/x-portable-greymap 202 2030 string P6 204>0 use netpbm 205>>0 string x \b, rawbits, pixmap 206!:strength + 45 207!:mime image/x-portable-pixmap 208 2090 string P7 Netpbm PAM image file 210!:mime image/x-portable-pixmap 211 212# From: bryanh@giraffe-data.com (Bryan Henderson) 2130 string \117\072 Solitaire Image Recorder format 214>4 string \013 MGI Type 11 215>4 string \021 MGI Type 17 2160 string .MDA MicroDesign data 217>21 byte 48 version 2 218>21 byte 51 version 3 2190 string .MDP MicroDesign page data 220>21 byte 48 version 2 221>21 byte 51 version 3 222 223# NIFF (Navy Interchange File Format, a modification of TIFF) images 224# [GRR: this *must* go before TIFF] 2250 string IIN1 NIFF image data 226!:mime image/x-niff 227 228# Canon RAW version 1 (CRW) files are a type of Canon Image File Format 229# (CIFF) file. These are apparently all little-endian. 230# From: Adam Buchbinder <adam.buchbinder@gmail.com> 231# URL: http://www.sno.phy.queensu.ca/~phil/exiftool/canon_raw.html 2320 string II\x1a\0\0\0HEAPCCDR Canon CIFF raw image data 233!:mime image/x-canon-crw 234>16 leshort x \b, version %d. 235>14 leshort x \b%d 236 237# Canon RAW version 2 (CR2) files are a kind of TIFF with an extra magic 238# number. Put this above the TIFF test to make sure we detect them. 239# These are apparently all little-endian. 240# From: Adam Buchbinder <adam.buchbinder@gmail.com> 241# URL: http://libopenraw.freedesktop.org/wiki/Canon_CR2 2420 string II\x2a\0\x10\0\0\0CR Canon CR2 raw image data 243!:mime image/x-canon-cr2 244>10 byte x \b, version %d. 245>11 byte x \b%d 246 247# Tag Image File Format, from Daniel Quinlan (quinlan@yggdrasil.com) 248# The second word of TIFF files is the TIFF version number, 42, which has 249# never changed. The TIFF specification recommends testing for it. 2500 string MM\x00\x2a TIFF image data, big-endian 251!:mime image/tiff 252>(4.L) use \^tiff_ifd 2530 string II\x2a\x00 TIFF image data, little-endian 254!:mime image/tiff 255>(4.l) use tiff_ifd 256 2570 name tiff_ifd 258>0 leshort x \b, direntries=%d 259>2 use tiff_entry 260 2610 name tiff_entry 262# NewSubFileType 263>0 leshort 0xfe 264>>12 use tiff_entry 265>0 leshort 0x100 266>>4 lelong 1 267>>>12 use tiff_entry 268>>>8 leshort x \b, width=%d 269>0 leshort 0x101 270>>4 lelong 1 271>>>8 leshort x \b, height=%d 272>>>12 use tiff_entry 273>0 leshort 0x102 274>>8 leshort x \b, bps=%d 275>>12 use tiff_entry 276>0 leshort 0x103 277>>4 lelong 1 \b, compression= 278>>>8 leshort 1 \bnone 279>>>8 leshort 2 \bhuffman 280>>>8 leshort 3 \bbi-level group 3 281>>>8 leshort 4 \bbi-level group 4 282>>>8 leshort 5 \bLZW 283>>>8 leshort 6 \bJPEG (old) 284>>>8 leshort 7 \bJPEG 285>>>8 leshort 8 \bdeflate 286>>>8 leshort 9 \bJBIG, ITU-T T.85 287>>>8 leshort 0xa \bJBIG, ITU-T T.43 288>>>8 leshort 0x7ffe \bNeXT RLE 2-bit 289>>>8 leshort 0x8005 \bPackBits (Macintosh RLE) 290>>>8 leshort 0x8029 \bThunderscan RLE 291>>>8 leshort 0x807f \bRasterPadding (CT or MP) 292>>>8 leshort 0x8080 \bRLE (Line Work) 293>>>8 leshort 0x8081 \bRLE (High-Res Cont-Tone) 294>>>8 leshort 0x8082 \bRLE (Binary Line Work) 295>>>8 leshort 0x80b2 \bDeflate (PKZIP) 296>>>8 leshort 0x80b3 \bKodak DCS 297>>>8 leshort 0x8765 \bJBIG 298>>>8 leshort 0x8798 \bJPEG2000 299>>>8 leshort 0x8799 \bNikon NEF Compressed 300>>>8 default x 301>>>>8 leshort x \b(unknown 0x%x) 302>>>12 use tiff_entry 303>0 leshort 0x106 \b, PhotometricIntepretation= 304>>8 clear x 305>>8 leshort 0 \bWhiteIsZero 306>>8 leshort 1 \bBlackIsZero 307>>8 leshort 2 \bRGB 308>>8 leshort 3 \bRGB Palette 309>>8 leshort 4 \bTransparency Mask 310>>8 leshort 5 \bCMYK 311>>8 leshort 6 \bYCbCr 312>>8 leshort 8 \bCIELab 313>>8 default x 314>>>8 leshort x \b(unknown=0x%x) 315>>12 use tiff_entry 316# FillOrder 317>0 leshort 0x10a 318>>4 lelong 1 319>>>12 use tiff_entry 320# DocumentName 321>0 leshort 0x10d 322>>(8.l) string x \b, name=%s 323>>>12 use tiff_entry 324# ImageDescription 325>0 leshort 0x10e 326>>(8.l) string x \b, description=%s 327>>>12 use tiff_entry 328# Make 329>0 leshort 0x10f 330>>(8.l) string x \b, manufacturer=%s 331>>>12 use tiff_entry 332# Model 333>0 leshort 0x110 334>>(8.l) string x \b, model=%s 335>>>12 use tiff_entry 336# StripOffsets 337>0 leshort 0x111 338>>12 use tiff_entry 339# Orientation 340>0 leshort 0x112 \b, orientation= 341>>8 leshort 1 \bupper-left 342>>8 leshort 3 \blower-right 343>>8 leshort 6 \bupper-right 344>>8 leshort 8 \blower-left 345>>8 leshort 9 \bundefined 346>>8 default x 347>>>8 leshort x \b[*%d*] 348>>12 use tiff_entry 349# XResolution 350>0 leshort 0x11a 351>>8 lelong x \b, xresolution=%d 352>>12 use tiff_entry 353# YResolution 354>0 leshort 0x11b 355>>8 lelong x \b, yresolution=%d 356>>12 use tiff_entry 357# ResolutionUnit 358>0 leshort 0x128 359>>8 leshort x \b, resolutionunit=%d 360>>12 use tiff_entry 361# Software 362>0 leshort 0x131 363>>(8.l) string x \b, software=%s 364>>12 use tiff_entry 365# Datetime 366>0 leshort 0x132 367>>(8.l) string x \b, datetime=%s 368>>12 use tiff_entry 369# HostComputer 370>0 leshort 0x13c 371>>(8.l) string x \b, hostcomputer=%s 372>>12 use tiff_entry 373# WhitePoint 374>0 leshort 0x13e 375>>12 use tiff_entry 376# PrimaryChromaticities 377>0 leshort 0x13f 378>>12 use tiff_entry 379# YCbCrCoefficients 380>0 leshort 0x211 381>>12 use tiff_entry 382# YCbCrPositioning 383>0 leshort 0x213 384>>12 use tiff_entry 385# ReferenceBlackWhite 386>0 leshort 0x214 387>>12 use tiff_entry 388# Copyright 389>0 leshort 0x8298 390>>(8.l) string x \b, copyright=%s 391>>12 use tiff_entry 392# ExifOffset 393>0 leshort 0x8769 394>>12 use tiff_entry 395# GPS IFD 396>0 leshort 0x8825 \b, GPS-Data 397>>12 use tiff_entry 398 399#>0 leshort x \b, unknown=0x%x 400#>>12 use tiff_entry 401 4020 string MM\x00\x2b Big TIFF image data, big-endian 403!:mime image/tiff 4040 string II\x2b\x00 Big TIFF image data, little-endian 405!:mime image/tiff 406 407# PNG [Portable Network Graphics, or "PNG's Not GIF"] images 408# (Greg Roelofs, newt@uchicago.edu) 409# (Albert Cahalan, acahalan@cs.uml.edu) 410# 411# 137 P N G \r \n ^Z \n [4-byte length] H E A D [HEAD data] [HEAD crc] ... 412# 4130 string \x89PNG\x0d\x0a\x1a\x0a PNG image data 414!:mime image/png 415>16 belong x \b, %d x 416>20 belong x %d, 417>24 byte x %d-bit 418>25 byte 0 grayscale, 419>25 byte 2 \b/color RGB, 420>25 byte 3 colormap, 421>25 byte 4 gray+alpha, 422>25 byte 6 \b/color RGBA, 423#>26 byte 0 deflate/32K, 424>28 byte 0 non-interlaced 425>28 byte 1 interlaced 426 427# possible GIF replacements; none yet released! 428# (Greg Roelofs, newt@uchicago.edu) 429# 430# GRR 950115: this was mine ("Zip GIF"): 4310 string GIF94z ZIF image (GIF+deflate alpha) 432!:mime image/x-unknown 433# 434# GRR 950115: this is Jeremy Wohl's Free Graphics Format (better): 435# 4360 string FGF95a FGF image (GIF+deflate beta) 437!:mime image/x-unknown 438# 439# GRR 950115: this is Thomas Boutell's Portable Bitmap Format proposal 440# (best; not yet implemented): 441# 4420 string PBF PBF image (deflate compression) 443!:mime image/x-unknown 444 445# GIF 4460 string GIF8 GIF image data 447!:mime image/gif 448!:apple 8BIMGIFf 449>4 string 7a \b, version 8%s, 450>4 string 9a \b, version 8%s, 451>6 leshort >0 %d x 452>8 leshort >0 %d 453#>10 byte &0x80 color mapped, 454#>10 byte&0x07 =0x00 2 colors 455#>10 byte&0x07 =0x01 4 colors 456#>10 byte&0x07 =0x02 8 colors 457#>10 byte&0x07 =0x03 16 colors 458#>10 byte&0x07 =0x04 32 colors 459#>10 byte&0x07 =0x05 64 colors 460#>10 byte&0x07 =0x06 128 colors 461#>10 byte&0x07 =0x07 256 colors 462 463# ITC (CMU WM) raster files. It is essentially a byte-reversed Sun raster, 464# 1 plane, no encoding. 4650 string \361\0\100\273 CMU window manager raster image data 466>4 lelong >0 %d x 467>8 lelong >0 %d, 468>12 lelong >0 %d-bit 469 470# Magick Image File Format 4710 string id=ImageMagick MIFF image data 472 473# Artisan 4740 long 1123028772 Artisan image data 475>4 long 1 \b, rectangular 24-bit 476>4 long 2 \b, rectangular 8-bit with colormap 477>4 long 3 \b, rectangular 32-bit (24-bit with matte) 478 479# FIG (Facility for Interactive Generation of figures), an object-based format 4800 search/1 #FIG FIG image text 481>5 string x \b, version %.3s 482 483# PHIGS 4840 string ARF_BEGARF PHIGS clear text archive 4850 string @(#)SunPHIGS SunPHIGS 486# version number follows, in the form m.n 487>40 string SunBin binary 488>32 string archive archive 489 490# GKS (Graphics Kernel System) 4910 string GKSM GKS Metafile 492>24 string SunGKS \b, SunGKS 493 494# CGM image files 4950 string BEGMF clear text Computer Graphics Metafile 496 497# MGR bitmaps (Michael Haardt, u31b3hs@pool.informatik.rwth-aachen.de) 4980 string yz MGR bitmap, modern format, 8-bit aligned 4990 string zz MGR bitmap, old format, 1-bit deep, 16-bit aligned 5000 string xz MGR bitmap, old format, 1-bit deep, 32-bit aligned 5010 string yx MGR bitmap, modern format, squeezed 502 503# Fuzzy Bitmap (FBM) images 5040 string %bitmap\0 FBM image data 505>30 long 0x31 \b, mono 506>30 long 0x33 \b, color 507 508# facsimile data 5091 string PC\ Research,\ Inc group 3 fax data 510>29 byte 0 \b, normal resolution (204x98 DPI) 511>29 byte 1 \b, fine resolution (204x196 DPI) 512# From: Herbert Rosmanith <herp@wildsau.idv.uni.linz.at> 5130 string Sfff structured fax file 514 515# From: Joerg Jenderek <joerg.jen.der.ek@gmx.net> 516# most files with the extension .EPA and some with .BMP 5170 string \x11\x06 Award BIOS Logo, 136 x 84 518!:mime image/x-award-bioslogo 5190 string \x11\x09 Award BIOS Logo, 136 x 126 520!:mime image/x-award-bioslogo 521#0 string \x07\x1f BIOS Logo corrupted? 522# http://www.blackfiveservices.co.uk/awbmtools.shtml 523# http://biosgfx.narod.ru/v3/ 524# http://biosgfx.narod.ru/abr-2/ 5250 string AWBM 526>4 leshort <1981 Award BIOS bitmap 527!:mime image/x-award-bmp 528# image width is a multiple of 4 529>>4 leshort&0x0003 0 530>>>4 leshort x \b, %d 531>>>6 leshort x x %d 532>>4 leshort&0x0003 >0 \b, 533>>>4 leshort&0x0003 =1 534>>>>4 leshort x %d+3 535>>>4 leshort&0x0003 =2 536>>>>4 leshort x %d+2 537>>>4 leshort&0x0003 =3 538>>>>4 leshort x %d+1 539>>>6 leshort x x %d 540# at offset 8 starts imagedata followed by "RGB " marker 541 542# PC bitmaps (OS/2, Windows BMP files) (Greg Roelofs, newt@uchicago.edu) 543# http://en.wikipedia.org/wiki/BMP_file_format#DIB_header_.\ 544# 28bitmap_information_header.29 5450 string BM 546>14 leshort 12 PC bitmap, OS/2 1.x format 547!:mime image/x-ms-bmp 548>>18 leshort x \b, %d x 549>>20 leshort x %d 550>14 leshort 64 PC bitmap, OS/2 2.x format 551!:mime image/x-ms-bmp 552>>18 leshort x \b, %d x 553>>20 leshort x %d 554>14 leshort 40 PC bitmap, Windows 3.x format 555!:mime image/x-ms-bmp 556>>18 lelong x \b, %d x 557>>22 lelong x %d x 558>>28 leshort x %d 559>14 leshort 124 PC bitmap, Windows 98/2000 and newer format 560!:mime image/x-ms-bmp 561>>18 lelong x \b, %d x 562>>22 lelong x %d x 563>>28 leshort x %d 564>14 leshort 108 PC bitmap, Windows 95/NT4 and newer format 565!:mime image/x-ms-bmp 566>>18 lelong x \b, %d x 567>>22 lelong x %d x 568>>28 leshort x %d 569>14 leshort 128 PC bitmap, Windows NT/2000 format 570!:mime image/x-ms-bmp 571>>18 lelong x \b, %d x 572>>22 lelong x %d x 573>>28 leshort x %d 574# Too simple - MPi 575#0 string IC PC icon data 576#0 string PI PC pointer image data 577#0 string CI PC color icon data 578#0 string CP PC color pointer image data 579# Conflicts with other entries [BABYL] 580#0 string BA PC bitmap array data 581 582# XPM icons (Greg Roelofs, newt@uchicago.edu) 5830 search/1 /*\ XPM\ */ X pixmap image text 584!:mime image/x-xpmi 585 586# Utah Raster Toolkit RLE images (janl@ifi.uio.no) 5870 leshort 0xcc52 RLE image data, 588>6 leshort x %d x 589>8 leshort x %d 590>2 leshort >0 \b, lower left corner: %d 591>4 leshort >0 \b, lower right corner: %d 592>10 byte&0x1 =0x1 \b, clear first 593>10 byte&0x2 =0x2 \b, no background 594>10 byte&0x4 =0x4 \b, alpha channel 595>10 byte&0x8 =0x8 \b, comment 596>11 byte >0 \b, %d color channels 597>12 byte >0 \b, %d bits per pixel 598>13 byte >0 \b, %d color map channels 599 600# image file format (Robert Potter, potter@cs.rochester.edu) 6010 string Imagefile\ version- iff image data 602# this adds the whole header (inc. version number), informative but longish 603>10 string >\0 %s 604 605# Sun raster images, from Daniel Quinlan (quinlan@yggdrasil.com) 6060 belong 0x59a66a95 Sun raster image data 607>4 belong >0 \b, %d x 608>8 belong >0 %d, 609>12 belong >0 %d-bit, 610#>16 belong >0 %d bytes long, 611>20 belong 0 old format, 612#>20 belong 1 standard, 613>20 belong 2 compressed, 614>20 belong 3 RGB, 615>20 belong 4 TIFF, 616>20 belong 5 IFF, 617>20 belong 0xffff reserved for testing, 618>24 belong 0 no colormap 619>24 belong 1 RGB colormap 620>24 belong 2 raw colormap 621#>28 belong >0 colormap is %d bytes long 622 623# SGI image file format, from Daniel Quinlan (quinlan@yggdrasil.com) 624# 625# See 626# http://reality.sgi.com/grafica/sgiimage.html 627# 6280 beshort 474 SGI image data 629#>2 byte 0 \b, verbatim 630>2 byte 1 \b, RLE 631#>3 byte 1 \b, normal precision 632>3 byte 2 \b, high precision 633>4 beshort x \b, %d-D 634>6 beshort x \b, %d x 635>8 beshort x %d 636>10 beshort x \b, %d channel 637>10 beshort !1 \bs 638>80 string >0 \b, "%s" 639 6400 string IT01 FIT image data 641>4 belong x \b, %d x 642>8 belong x %d x 643>12 belong x %d 644# 6450 string IT02 FIT image data 646>4 belong x \b, %d x 647>8 belong x %d x 648>12 belong x %d 649# 6502048 string PCD_IPI Kodak Photo CD image pack file 651>0xe02 byte&0x03 0x00 , landscape mode 652>0xe02 byte&0x03 0x01 , portrait mode 653>0xe02 byte&0x03 0x02 , landscape mode 654>0xe02 byte&0x03 0x03 , portrait mode 6550 string PCD_OPA Kodak Photo CD overview pack file 656 657# FITS format. Jeff Uphoff <juphoff@tarsier.cv.nrao.edu> 658# FITS is the Flexible Image Transport System, the de facto standard for 659# data and image transfer, storage, etc., for the astronomical community. 660# (FITS floating point formats are big-endian.) 6610 string SIMPLE\ \ = FITS image data 662>109 string 8 \b, 8-bit, character or unsigned binary integer 663>108 string 16 \b, 16-bit, two's complement binary integer 664>107 string \ 32 \b, 32-bit, two's complement binary integer 665>107 string -32 \b, 32-bit, floating point, single precision 666>107 string -64 \b, 64-bit, floating point, double precision 667 668# other images 6690 string This\ is\ a\ BitMap\ file Lisp Machine bit-array-file 670 671# From SunOS 5.5.1 "/etc/magic" - appeared right before Sun raster image 672# stuff. 673# 6740 beshort 0x1010 PEX Binary Archive 675 676# DICOM medical imaging data 677# URL: https://en.wikipedia.org/wiki/DICOM#Data_format 678# Note: "dcm" is the official file name extension 679# XnView mention also "dc3" and "acr" as file name extension 680128 string DICM DICOM medical imaging data 681!:mime application/dicom 682!:ext dcm/dicom/dic 683 684# XWD - X Window Dump file. 685# As described in /usr/X11R6/include/X11/XWDFile.h 686# used by the xwd program. 687# Bradford Castalia, idaeim, 1/01 688# updated by Adam Buchbinder, 2/09 689# The following assumes version 7 of the format; the first long is the length 690# of the header, which is at least 25 4-byte longs, and the one at offset 8 691# is a constant which is always either 1 or 2. Offset 12 is the pixmap depth, 692# which is a maximum of 32. 6930 belong >100 694>8 belong <3 695>>12 belong <33 696>>>4 belong 7 XWD X Window Dump image data 697!:mime image/x-xwindowdump 698>>>>100 string >\0 \b, "%s" 699>>>>16 belong x \b, %dx 700>>>>20 belong x \b%dx 701>>>>12 belong x \b%d 702 703# PDS - Planetary Data System 704# These files use Parameter Value Language in the header section. 705# Unfortunately, there is no certain magic, but the following 706# strings have been found to be most likely. 7070 string NJPL1I00 PDS (JPL) image data 7082 string NJPL1I PDS (JPL) image data 7090 string CCSD3ZF PDS (CCSD) image data 7102 string CCSD3Z PDS (CCSD) image data 7110 string PDS_ PDS image data 7120 string LBLSIZE= PDS (VICAR) image data 713 714# pM8x: ATARI STAD compressed bitmap format 715# 716# from Oskar Schirmer <schirmer@scara.com> Feb 2, 2001 717# p M 8 5/6 xx yy zz data... 718# Atari ST STAD bitmap is always 640x400, bytewise runlength compressed. 719# bytes either run horizontally (pM85) or vertically (pM86). yy is the 720# most frequent byte, xx and zz are runlength escape codes, where xx is 721# used for runs of yy. 722# 7230 string pM85 Atari ST STAD bitmap image data (hor) 724>5 byte 0x00 (white background) 725>5 byte 0xFF (black background) 7260 string pM86 Atari ST STAD bitmap image data (vert) 727>5 byte 0x00 (white background) 728>5 byte 0xFF (black background) 729 730# Gurkan Sengun <gurkan@linuks.mine.nu>, www.linuks.mine.nu 731# http://www.atarimax.com/jindroush.atari.org/afmtatr.html 7320 leshort 0x0296 Atari ATR image 733 734# XXX: 735# This is bad magic 0x5249 == 'RI' conflicts with RIFF and other 736# magic. 737# SGI RICE image file <mpruett@sgi.com> 738#0 beshort 0x5249 RICE image 739#>2 beshort x v%d 740#>4 beshort x (%d x 741#>6 beshort x %d) 742#>8 beshort 0 8 bit 743#>8 beshort 1 10 bit 744#>8 beshort 2 12 bit 745#>8 beshort 3 13 bit 746#>10 beshort 0 4:2:2 747#>10 beshort 1 4:2:2:4 748#>10 beshort 2 4:4:4 749#>10 beshort 3 4:4:4:4 750#>12 beshort 1 RGB 751#>12 beshort 2 CCIR601 752#>12 beshort 3 RP175 753#>12 beshort 4 YUV 754 755# PCX image files 756# From: Dan Fandrich <dan@coneharvesters.com> 757# updated by Joerg Jenderek at Feb 2013 by http://de.wikipedia.org/wiki/PCX 758# http://web.archive.org/web/20100206055706/http://www.qzx.com/pc-gpe/pcx.txt 759# GRR: original test was still too general as it catches xbase examples T5.DBT,T6.DBT with 0xa000000 760# test for bytes 0x0a,version byte (0,2,3,4,5),compression byte flag(0,1), bit depth (>0) of PCX or T5.DBT,T6.DBT 7610 ubelong&0xffF8fe00 0x0a000000 762# for PCX bit depth > 0 763>3 ubyte >0 764# test for valid versions 765>>1 ubyte <6 766>>>1 ubyte !1 PCX 767!:mime image/x-pcx 768#!:mime image/pcx 769>>>>1 ubyte 0 ver. 2.5 image data 770>>>>1 ubyte 2 ver. 2.8 image data, with palette 771>>>>1 ubyte 3 ver. 2.8 image data, without palette 772>>>>1 ubyte 4 for Windows image data 773>>>>1 ubyte 5 ver. 3.0 image data 774>>>>4 uleshort x bounding box [%d, 775>>>>6 uleshort x %d] - 776>>>>8 uleshort x [%d, 777>>>>10 uleshort x %d], 778>>>>65 ubyte >1 %d planes each of 779>>>>3 ubyte x %d-bit 780>>>>68 byte 1 colour, 781>>>>68 byte 2 grayscale, 782# this should not happen 783>>>>68 default x image, 784>>>>12 leshort >0 %d x 785>>>>>14 uleshort x %d dpi, 786>>>>2 byte 0 uncompressed 787>>>>2 byte 1 RLE compressed 788 789# Adobe Photoshop 790# From: Asbjoern Sloth Toennesen <asbjorn@lila.io> 7910 string 8BPS Adobe Photoshop Image 792!:mime image/vnd.adobe.photoshop 793>4 beshort 2 (PSB) 794>18 belong x \b, %d x 795>14 belong x %d, 796>24 beshort 0 bitmap 797>24 beshort 1 grayscale 798>>12 beshort 2 with alpha 799>24 beshort 2 indexed 800>24 beshort 3 RGB 801>>12 beshort 4 \bA 802>24 beshort 4 CMYK 803>>12 beshort 5 \bA 804>24 beshort 7 multichannel 805>24 beshort 8 duotone 806>24 beshort 9 lab 807>12 beshort > 1 808>>12 beshort x \b, %dx 809>12 beshort 1 \b, 810>22 beshort x %d-bit channel 811>12 beshort > 1 \bs 812 813# XV thumbnail indicator (ThMO) 8140 string P7\ 332 XV thumbnail image data 815 816# NITF is defined by United States MIL-STD-2500A 8170 string NITF National Imagery Transmission Format 818>25 string >\0 dated %.14s 819 820# GEM Image: Version 1, Headerlen 8 (Wolfram Kleff) 821# Format variations from: Bernd Nuernberger <bernd.nuernberger@web.de> 822# Update: Joerg Jenderek 823# See http://fileformats.archiveteam.org/wiki/GEM_Raster 824# For variations, also see: 825# http://www.seasip.info/Gem/ff_img.html (Ventura) 826# http://www.atari-wiki.com/?title=IMG_file (XIMG, STTT) 827# http://www.fileformat.info/format/gemraster/spec/index.htm (XIMG, STTT) 828# http://sylvana.net/1stguide/1STGUIDE.ENG (TIMG) 8290 beshort 0x0001 830# header_size 831>2 beshort 0x0008 832>>0 use gem_info 833>2 beshort 0x0009 834>>0 use gem_info 835# no example for NOSIG 836>2 beshort 24 837>>0 use gem_info 838# no example for HYPERPAINT 839>2 beshort 25 840>>0 use gem_info 84116 string XIMG\0 842>0 use gem_info 843# no example 84416 string STTT\0\x10 845>0 use gem_info 846# no example or description 84716 string TIMG\0 848>0 use gem_info 849 8500 name gem_info 851# version is 2 for some XIMG and 1 for all others 852>0 beshort <0x0003 GEM 853# http://www.snowstone.org.uk/riscos/mimeman/mimemap.txt 854!:mime image/x-gem 855# header_size 24 25 27 59 779 words for colored bitmaps 856>>2 beshort >9 857>>>16 string STTT\0\x10 STTT 858>>>16 string TIMG\0 TIMG 859# HYPERPAINT or NOSIG variant 860>>>16 string \0\x80 861>>>>2 beshort =24 NOSIG 862>>>>2 beshort !24 HYPERPAINT 863# NOSIG or XIMG variant 864>>>16 default x 865>>>>16 string !XIMG\0 NOSIG 866>>16 string =XIMG\0 XIMG Image data 867!:ext img/ximg 868# to avoid Warning: Current entry does not yet have a description for adding a EXTENSION type 869>>16 string !XIMG\0 Image data 870!:ext img 871# header_size is 9 for Ventura files and 8 for other GEM Paint files 872>>2 beshort 9 (Ventura) 873#>>2 beshort 8 (Paint) 874>>12 beshort x %d x 875>>14 beshort x %d, 876# 1 4 8 877>>4 beshort x %d planes, 878# in tenths of a millimetre 879>>8 beshort x %d x 880>>10 beshort x %d pixelsize 881# pattern_size 1-8. 2 for GEM Paint 882>>6 beshort !2 \b, pattern size %d 883 884# GEM Metafile (Wolfram Kleff) 8850 lelong 0x0018FFFF GEM Metafile data 886>4 leshort x version %d 887 888# 889# SMJPEG. A custom Motion JPEG format used by Loki Entertainment 890# Software Torbjorn Andersson <d91tan@Update.UU.SE>. 891# 8920 string \0\nSMJPEG SMJPEG 893>8 belong x %d.x data 894# According to the specification you could find any number of _TXT 895# headers here, but I can't think of any way of handling that. None of 896# the SMJPEG files I tried it on used this feature. Even if such a 897# file is encountered the output should still be reasonable. 898>16 string _SND \b, 899>>24 beshort >0 %d Hz 900>>26 byte 8 8-bit 901>>26 byte 16 16-bit 902>>28 string NONE uncompressed 903# >>28 string APCM ADPCM compressed 904>>27 byte 1 mono 905>>28 byte 2 stereo 906# Help! Isn't there any way to avoid writing this part twice? 907>>32 string _VID \b, 908# >>>48 string JFIF JPEG 909>>>40 belong >0 %d frames 910>>>44 beshort >0 (%d x 911>>>46 beshort >0 %d) 912>16 string _VID \b, 913# >>32 string JFIF JPEG 914>>24 belong >0 %d frames 915>>28 beshort >0 (%d x 916>>30 beshort >0 %d) 917 9180 string Paint\ Shop\ Pro\ Image\ File Paint Shop Pro Image File 919 920# "thumbnail file" (icon) 921# descended from "xv", but in use by other applications as well (Wolfram Kleff) 9220 string P7\ 332 XV "thumbnail file" (icon) data 923 924# taken from fkiss: (<yav@mte.biglobe.ne.jp> ?) 9250 string KiSS KISS/GS 926>4 byte 16 color 927>>5 byte x %d bit 928>>8 leshort x %d colors 929>>10 leshort x %d groups 930>4 byte 32 cell 931>>5 byte x %d bit 932>>8 leshort x %d x 933>>10 leshort x %d 934>>12 leshort x +%d 935>>14 leshort x +%d 936 937# Webshots (www.webshots.com), by John Harrison 9380 string C\253\221g\230\0\0\0 Webshots Desktop .wbz file 939 940# Hercules DASD image files 941# From Jan Jaeger <jj@septa.nl> 9420 string CKD_P370 Hercules CKD DASD image file 943>8 long x \b, %d heads per cylinder 944>12 long x \b, track size %d bytes 945>16 byte x \b, device type 33%2.2X 946 9470 string CKD_C370 Hercules compressed CKD DASD image file 948>8 long x \b, %d heads per cylinder 949>12 long x \b, track size %d bytes 950>16 byte x \b, device type 33%2.2X 951 9520 string CKD_S370 Hercules CKD DASD shadow file 953>8 long x \b, %d heads per cylinder 954>12 long x \b, track size %d bytes 955>16 byte x \b, device type 33%2.2X 956 957# Squeak images and programs - etoffi@softhome.net 9580 string \146\031\0\0 Squeak image data 9590 search/1 'From\040Squeak Squeak program text 960 961# partimage: file(1) magic for PartImage files (experimental, incomplete) 962# Author: Hans-Joachim Baader <hjb@pro-linux.de> 9630 string PaRtImAgE-VoLuMe PartImage 964>0x0020 string 0.6.1 file version %s 965>>0x0060 lelong >-1 volume %d 966#>>0x0064 8 byte identifier 967#>>0x007c reserved 968>>0x0200 string >\0 type %s 969>>0x1400 string >\0 device %s, 970>>0x1600 string >\0 original filename %s, 971# Some fields omitted 972>>0x2744 lelong 0 not compressed 973>>0x2744 lelong 1 gzip compressed 974>>0x2744 lelong 2 bzip2 compressed 975>>0x2744 lelong >2 compressed with unknown algorithm 976>0x0020 string >0.6.1 file version %s 977>0x0020 string <0.6.1 file version %s 978 979# DCX is multi-page PCX, using a simple header of up to 1024 980# offsets for the respective PCX components. 981# From: Joerg Wunsch <joerg_wunsch@uriah.heep.sax.de> 9820 lelong 987654321 DCX multi-page PCX image data 983 984# Simon Walton <simonw@matteworld.com> 985# Kodak Cineon format for scanned negatives 986# http://www.kodak.com/US/en/motion/support/dlad/ 9870 lelong 0xd75f2a80 Cineon image data 988>200 belong >0 \b, %d x 989>204 belong >0 %d 990 991 992# Bio-Rad .PIC is an image format used by microscope control systems 993# and related image processing software used by biologists. 994# From: Vebjorn Ljosa <vebjorn@ljosa.com> 995# BOOL values are two-byte integers; use them to rule out false positives. 996# http://web.archive.org/web/20050317223257/www.cs.ubc.ca/spider/ladic/text/biorad.txt 997# Samples: http://www.loci.wisc.edu/software/sample-data 99814 leshort <2 999>62 leshort <2 1000>>54 leshort 12345 Bio-Rad .PIC Image File 1001>>>0 leshort >0 %d x 1002>>>2 leshort >0 %d, 1003>>>4 leshort =1 1 image in file 1004>>>4 leshort >1 %d images in file 1005 1006# From Jan "Yenya" Kasprzak <kas@fi.muni.cz> 1007# The description of *.mrw format can be found at 1008# http://www.dalibor.cz/minolta/raw_file_format.htm 10090 string \000MRM Minolta Dimage camera raw image data 1010 1011# Summary: DjVu image / document 1012# Extension: .djvu 1013# Reference: http://djvu.org/docs/DjVu3Spec.djvu 1014# Submitted by: Stephane Loeuillet <stephane.loeuillet@tiscali.fr> 1015# Modified by (1): Abel Cheung <abelcheung@gmail.com> 10160 string AT&TFORM 1017>12 string DJVM DjVu multiple page document 1018!:mime image/vnd.djvu 1019>12 string DJVU DjVu image or single page document 1020!:mime image/vnd.djvu 1021>12 string DJVI DjVu shared document 1022!:mime image/vnd.djvu 1023>12 string THUM DjVu page thumbnails 1024!:mime image/vnd.djvu 1025 1026# Originally by Marc Espie 1027# Modified by Robert Minsk <robertminsk at yahoo.com> 1028# http://www.openexr.com/openexrfilelayout.pdf 10290 lelong 20000630 OpenEXR image data, 1030!:mime image/x-exr 1031>4 lelong&0x000000ff x version %d, 1032>4 lelong ^0x00000200 storage: scanline 1033>4 lelong &0x00000200 storage: tiled 1034>8 search/0x1000 compression\0 \b, compression: 1035>>&16 byte 0 none 1036>>&16 byte 1 rle 1037>>&16 byte 2 zips 1038>>&16 byte 3 zip 1039>>&16 byte 4 piz 1040>>&16 byte 5 pxr24 1041>>&16 byte 6 b44 1042>>&16 byte 7 b44a 1043>>&16 byte >7 unknown 1044>8 search/0x1000 dataWindow\0 \b, dataWindow: 1045>>&10 lelong x (%d 1046>>&14 lelong x %d)- 1047>>&18 lelong x \b(%d 1048>>&22 lelong x %d) 1049>8 search/0x1000 displayWindow\0 \b, displayWindow: 1050>>&10 lelong x (%d 1051>>&14 lelong x %d)- 1052>>&18 lelong x \b(%d 1053>>&22 lelong x %d) 1054>8 search/0x1000 lineOrder\0 \b, lineOrder: 1055>>&14 byte 0 increasing y 1056>>&14 byte 1 decreasing y 1057>>&14 byte 2 random y 1058>>&14 byte >2 unknown 1059 1060# SMPTE Digital Picture Exchange Format, SMPTE DPX 1061# 1062# ANSI/SMPTE 268M-1994, SMPTE Standard for File Format for Digital 1063# Moving-Picture Exchange (DPX), v1.0, 18 February 1994 1064# Robert Minsk <robertminsk at yahoo.com> 10650 string SDPX DPX image data, big-endian, 1066!:mime image/x-dpx 1067>768 beshort <4 1068>>772 belong x %dx 1069>>776 belong x \b%d, 1070>768 beshort >3 1071>>776 belong x %dx 1072>>772 belong x \b%d, 1073>768 beshort 0 left to right/top to bottom 1074>768 beshort 1 right to left/top to bottom 1075>768 beshort 2 left to right/bottom to top 1076>768 beshort 3 right to left/bottom to top 1077>768 beshort 4 top to bottom/left to right 1078>768 beshort 5 top to bottom/right to left 1079>768 leshort 6 bottom to top/left to right 1080>768 leshort 7 bottom to top/right to left 1081 1082# From: Tom Hilinski <tom.hilinski@comcast.net> 1083# http://www.unidata.ucar.edu/packages/netcdf/ 10840 string CDF\001 NetCDF Data Format data 1085 1086#----------------------------------------------------------------------- 1087# Hierarchical Data Format, used to facilitate scientific data exchange 1088# specifications at http://hdf.ncsa.uiuc.edu/ 10890 belong 0x0e031301 Hierarchical Data Format (version 4) data 1090!:mime application/x-hdf 10910 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) data 1092!:mime application/x-hdf 1093512 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) with 512 bytes user block 1094!:mime application/x-hdf 10951024 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) with 1k user block 1096!:mime application/x-hdf 10972048 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) with 2k user block 1098!:mime application/x-hdf 10994096 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) with 4k user block 1100!:mime application/x-hdf 1101 1102 1103# From: Tobias Burnus <burnus@net-b.de> 1104# Xara (for a while: Corel Xara) is a graphic package, see 1105# http://www.xara.com/ for Windows and as GPL application for Linux 11060 string XARA\243\243 Xara graphics file 1107 1108# http://www.cartesianinc.com/Tech/ 11090 string CPC\262 Cartesian Perceptual Compression image 1110!:mime image/x-cpi 1111 1112# From Albert Cahalan <acahalan@gmail.com> 1113# puredigital used it for the CVS disposable camcorder 1114#8 lelong 4 ZBM bitmap image data 1115#>4 leshort x %u x 1116#>6 leshort x %u 1117 1118# From Albert Cahalan <acahalan@gmail.com> 1119# uncompressed 5:6:5 HighColor image for OLPC XO firmware icons 11200 string C565 OLPC firmware icon image data 1121>4 leshort x %u x 1122>6 leshort x %u 1123 1124# Applied Images - Image files from Cytovision 1125# Gustavo Junior Alves <gjalves@gjalves.com.br> 11260 string \xce\xda\xde\xfa Cytovision Metaphases file 11270 string \xed\xad\xef\xac Cytovision Karyotype file 11280 string \x0b\x00\x03\x00 Cytovision FISH Probe file 11290 string \xed\xfe\xda\xbe Cytovision FLEX file 11300 string \xed\xab\xed\xfe Cytovision FLEX file 11310 string \xad\xfd\xea\xad Cytovision RATS file 1132 1133# Wavelet Scalar Quantization format used in gray-scale fingerprint images 1134# From Tano M Fotang <mfotang@quanteq.com> 11350 string \xff\xa0\xff\xa8\x00 Wavelet Scalar Quantization image data 1136 1137# Type: PCO B16 image files 1138# URL: http://www.pco.de/fileadmin/user_upload/db/download/MA_CWDCOPIE_0412b.pdf 1139# From: Florian Philipp <florian.philipp@binarywings.net> 1140# Extension: .b16 1141# Description: Pixel image format produced by PCO Camware, typically used 1142# together with PCO cameras. 1143# Note: Different versions exist for e.g. 8 bit and 16 bit images. 1144# Documentation is incomplete. 11450 string/b PCO- PCO B16 image data 1146>12 lelong x \b, %dx 1147>16 lelong x \b%d 1148>20 lelong 0 \b, short header 1149>20 lelong -1 \b, extended header 1150>>24 lelong 0 \b, grayscale 1151>>>36 lelong 0 linear LUT 1152>>>36 lelong 1 logarithmic LUT 1153>>>28 lelong x [%d 1154>>>32 lelong x \b,%d] 1155>>24 lelong 1 \b, color 1156>>>64 lelong 0 linear LUT 1157>>>64 lelong 1 logarithmic LUT 1158>>>40 lelong x r[%d 1159>>>44 lelong x \b,%d] 1160>>>48 lelong x g[%d 1161>>>52 lelong x \b,%d] 1162>>>56 lelong x b[%d 1163>>>60 lelong x \b,%d] 1164 1165# Polar Monitor Bitmap (.pmb) used as logo for Polar Electro watches 1166# From: Markus Heidelberg <markus.heidelberg at web.de> 11670 string/t [BitmapInfo2] Polar Monitor Bitmap text 1168!:mime image/x-polar-monitor-bitmap 1169 1170# From: Rick Richardson <rickrich@gmail.com> 1171# updated by: Joerg Jenderek 1172# URL: http://techmods.net/nuvi/ 11730 string GARMIN\ BITMAP\ 01 Garmin Bitmap file 1174# extension is also used for 1175# Sony SRF raw image (image/x-sony-srf) 1176# SRF map 1177# Terragen Surface Map (http://www.planetside.co.uk/terragen) 1178# FileLocator Pro search criteria file (http://www.mythicsoft.com/filelocatorpro) 1179!:ext srf 1180#!:mime image/x-garmin-srf 1181# version 1.00,2.00,2.10,2.40,2.50 1182>0x2f string >0 \b, version %4.4s 1183# width (2880,2881,3240) 1184>0x55 uleshort >0 \b, %dx 1185# height (80,90) 1186>>0x53 uleshort x \b%d 1187 1188# Type: Ulead Photo Explorer5 (.pe5) 1189# URL: http://www.jisyo.com/cgibin/view.cgi?EXT=pe5 (Japanese) 1190# From: Simon Horman <horms@debian.org> 11910 string IIO2H Ulead Photo Explorer5 1192 1193# Type: X11 cursor 1194# URL: http://webcvs.freedesktop.org/mime/shared-mime-info/freedesktop.org.xml.in?view=markup 1195# From: Mathias Brodala <info@noctus.net> 11960 string Xcur X11 cursor 1197 1198# Type: Olympus ORF raw images. 1199# URL: http://libopenraw.freedesktop.org/wiki/Olympus_ORF 1200# From: Adam Buchbinder <adam.buchbinder@gmail.com> 12010 string MMOR Olympus ORF raw image data, big-endian 1202!:mime image/x-olympus-orf 12030 string IIRO Olympus ORF raw image data, little-endian 1204!:mime image/x-olympus-orf 12050 string IIRS Olympus ORF raw image data, little-endian 1206!:mime image/x-olympus-orf 1207 1208# Type: files used in modern AVCHD camcoders to store clip information 1209# Extension: .cpi 1210# From: Alexander Danilov <alexander.a.danilov@gmail.com> 12110 string HDMV0100 AVCHD Clip Information 1212 1213# From: Adam Buchbinder <adam.buchbinder@gmail.com> 1214# URL: http://local.wasp.uwa.edu.au/~pbourke/dataformats/pic/ 1215# Radiance HDR; usually has .pic or .hdr extension. 12160 string #?RADIANCE\n Radiance HDR image data 1217#!mime image/vnd.radiance 1218 1219# From: Adam Buchbinder <adam.buchbinder@gmail.com> 1220# URL: http://www.mpi-inf.mpg.de/resources/pfstools/pfs_format_spec.pdf 1221# Used by the pfstools packages. The regex matches for the image size could 1222# probably use some work. The MIME type is made up; if there's one in 1223# actual common use, it should replace the one below. 12240 string PFS1\x0a PFS HDR image data 1225#!mime image/x-pfs 1226>1 regex [0-9]*\ \b, %s 1227>>1 regex \ [0-9]{4} \bx%s 1228 1229# Type: Foveon X3F 1230# URL: http://www.photofo.com/downloads/x3f-raw-format.pdf 1231# From: Adam Buchbinder <adam.buchbinder@gmail.com> 1232# Note that the MIME type isn't defined anywhere that I can find; if 1233# there's a canonical type for this format, it should replace this one. 12340 string FOVb Foveon X3F raw image data 1235!:mime image/x-x3f 1236>6 leshort x \b, version %d. 1237>4 leshort x \b%d 1238>28 lelong x \b, %dx 1239>32 lelong x \b%d 1240 1241# Paint.NET file 1242# From Adam Buchbinder <adam.buchbinder@gmail.com> 12430 string PDN3 Paint.NET image data 1244!:mime image/x-paintnet 1245 1246# Not really an image. 1247# From: "Tano M. Fotang" <mfotang@quanteq.com> 12480 string \x46\x4d\x52\x00 ISO/IEC 19794-2 Format Minutiae Record (FMR) 1249 1250# doc: http://www.shikino.co.jp/eng/products/images/FLOWER.jpg.zip 1251# example: http://www.shikino.co.jp/eng/products/images/FLOWER.wdp.zip 125290 bequad 0x574D50484F544F00 JPEG-XR Image 1253>98 byte&0x08 =0x08 \b, hard tiling 1254>99 byte&0x80 =0x80 \b, tiling present 1255>99 byte&0x40 =0x40 \b, codestream present 1256>99 byte&0x38 x \b, spatial xform= 1257>99 byte&0x38 0x00 \bTL 1258>99 byte&0x38 0x08 \bBL 1259>99 byte&0x38 0x10 \bTR 1260>99 byte&0x38 0x18 \bBR 1261>99 byte&0x38 0x20 \bBT 1262>99 byte&0x38 0x28 \bRB 1263>99 byte&0x38 0x30 \bLT 1264>99 byte&0x38 0x38 \bLB 1265>100 byte&0x80 =0x80 \b, short header 1266>>102 beshort+1 x \b, %d 1267>>104 beshort+1 x \bx%d 1268>100 byte&0x80 =0x00 \b, long header 1269>>102 belong+1 x \b, %x 1270>>106 belong+1 x \bx%x 1271>101 beshort&0xf x \b, bitdepth= 1272>>101 beshort&0xf 0x0 \b1-WHITE=1 1273>>101 beshort&0xf 0x1 \b8 1274>>101 beshort&0xf 0x2 \b16 1275>>101 beshort&0xf 0x3 \b16-SIGNED 1276>>101 beshort&0xf 0x4 \b16-FLOAT 1277>>101 beshort&0xf 0x5 \b(reserved 5) 1278>>101 beshort&0xf 0x6 \b32-SIGNED 1279>>101 beshort&0xf 0x7 \b32-FLOAT 1280>>101 beshort&0xf 0x8 \b5 1281>>101 beshort&0xf 0x9 \b10 1282>>101 beshort&0xf 0xa \b5-6-5 1283>>101 beshort&0xf 0xb \b(reserved %d) 1284>>101 beshort&0xf 0xc \b(reserved %d) 1285>>101 beshort&0xf 0xd \b(reserved %d) 1286>>101 beshort&0xf 0xe \b(reserved %d) 1287>>101 beshort&0xf 0xf \b1-BLACK=1 1288>101 beshort&0xf0 x \b, colorfmt= 1289>>101 beshort&0xf0 0x00 \bYONLY 1290>>101 beshort&0xf0 0x10 \bYUV240 1291>>101 beshort&0xf0 0x20 \bYWV422 1292>>101 beshort&0xf0 0x30 \bYWV444 1293>>101 beshort&0xf0 0x40 \bCMYK 1294>>101 beshort&0xf0 0x50 \bCMYKDIRECT 1295>>101 beshort&0xf0 0x60 \bNCOMPONENT 1296>>101 beshort&0xf0 0x70 \bRGB 1297>>101 beshort&0xf0 0x80 \bRGBE 1298>>101 beshort&0xf0 >0x80 \b(reserved 0x%x) 1299 1300# From: Johan van der Knijff <johan.vanderknijff@kb.nl> 1301# 1302# BPG (Better Portable Graphics) format 1303# http://bellard.org/bpg/ 1304# http://fileformats.archiveteam.org/wiki/BPG 1305# 13060 string \x42\x50\x47\xFB BPG (Better Portable Graphics) 1307!:mime image/bpg 1308 1309# From: Joerg Jenderek 1310# URL: https://en.wikipedia.org/wiki/Apple_Icon_Image_format 13110 string icns Mac OS X icon 1312!:mime image/x-icns 1313!:apple ????icns 1314!:ext icns 1315>4 ubelong >0 1316# file size 1317>>4 ubelong x \b, %d bytes 1318# icon type 1319>>8 string x \b, "%4.4s" type 1320 1321# TIM images 13220 lelong 0x00000010 TIM image, 1323>4 lelong 0x8 4-Bit, 1324>4 lelong 0x9 8-Bit, 1325>4 lelong 0x2 15-Bit, 1326>4 lelong 0x3 24-Bit, 1327>4 lelong &8 1328>>(8.l+12) leshort x Pixel at (%d, 1329>>(8.l+14) leshort x \b%d) 1330>>(8.l+16) leshort x Size=%dx 1331>>(8.l+18) leshort x \b%d, 1332>>4 lelong 0x8 16 CLUT Entries at 1333>>4 lelong 0x9 256 CLUT Entries at 1334>>12 leshort x (%d, 1335>>14 leshort x \b%d) 1336>4 lelong ^8 1337>>12 leshort x Pixel at (%d, 1338>>14 leshort x \b%d) 1339>>16 leshort x Size=%dx 1340>>18 leshort x \b%d 1341 1342# MDEC streams 13430 lelong 0x80010160 MDEC video stream, 1344>16 leshort x %dx 1345>18 leshort x \b%d 1346#>8 lelong x %d frames 1347#>4 leshort x secCount=%d; 1348#>6 leshort x nSectors=%d; 1349#>12 lelong x frameSize=%d; 1350 1351# BS encoded bitstreams 13522 leshort 0x3800 BS image, 1353>6 leshort x Version %d, 1354>4 leshort x Quantization %d, 1355>0 leshort x (Decompresses to %d words) 1356 1357# Type: farbfeld image. 1358# Url: http://tools.suckless.org/farbfeld/ 1359# From: Ian D. Scott <ian@iandouglasscott.com> 1360# 13610 string farbfeld farbfeld image data, 1362>8 ubelong x %dx 1363>12 ubelong x \b%d 1364 1365# Type: Sega PVR image. 1366# From: David Korth <gerbilsoft@gerbilsoft.com> 1367# References: 1368# - http://fabiensanglard.net/Mykaruga/tools/segaPVRFormat.txt 1369# - https://github.com/yazgoo/pvrx2png 1370# - https://github.com/nickworonekin/puyotools 1371 1372# Sega PVR header. 13730 name sega-pvr-image-header 1374>0x0C leshort x %d x 1375>0x0E leshort x %d 1376# Image format. 1377>0x08 byte 0 \b, ARGB1555 1378>0x08 byte 1 \b, RGB565 1379>0x08 byte 2 \b, ARGB4444 1380>0x08 byte 3 \b, YUV442 1381>0x08 byte 4 \b, Bump 1382>0x08 byte 5 \b, 4bpp 1383>0x08 byte 6 \b, 8bpp 1384# Image data type. 1385>0x09 byte 0x01 \b, square twiddled 1386>0x09 byte 0x02 \b, square twiddled & mipmap 1387>0x09 byte 0x03 \b, VQ 1388>0x09 byte 0x04 \b, VQ & mipmap 1389>0x09 byte 0x05 \b, 8-bit CLUT twiddled 1390>0x09 byte 0x06 \b, 4-bit CLUT twiddled 1391>0x09 byte 0x07 \b, 8-bit direct twiddled 1392>0x09 byte 0x08 \b, 4-bit direct twiddled 1393>0x09 byte 0x09 \b, rectangle 1394>0x09 byte 0x0B \b, rectangular stride 1395>0x09 byte 0x0D \b, rectangular twiddled 1396>0x09 byte 0x10 \b, small VQ 1397>0x09 byte 0x11 \b, small VQ & mipmap 1398>0x09 byte 0x12 \b, square twiddled & mipmap 1399 1400# Sega PVR (Xbox) image header. 1401# Contains an embedded DirectDraw surface instead of PVR data. 14020 name sega-pvr-xbox-dds-header 1403>16 lelong x %d x 1404>12 lelong x %d, 1405>84 string x %.4s 1406 1407# Sega PVR image. 14080 string PVRT 1409>0x10 string DDS\040\174\000\000\000 Sega PVR (Xbox) image: 1410>>0x20 use sega-pvr-xbox-dds-header 1411>0x10 belong !0x44445320 Sega PVR image: 1412>>0 use sega-pvr-image-header 1413 1414# Sega PVR image with GBIX. 14150 string GBIX 1416>0x10 string PVRT 1417>>0x10 string DDS\040\174\000\000\000 Sega PVR (Xbox) image: 1418>>>0x20 use sega-pvr-xbox-dds-header 1419>>0x10 belong !0x44445320 Sega PVR image: 1420>>>0x10 use sega-pvr-image-header 1421>>0x08 lelong x \b, global index = %u 1422 1423# Sega GVR header. 14240 name sega-gvr-image-header 1425>0x0C beshort x %d x 1426>0x0E beshort x %d 1427# Image data format. 1428>0x0B byte 0 \b, I4 1429>0x0B byte 1 \b, I8 1430>0x0B byte 2 \b, IA4 1431>0x0B byte 3 \b, IA8 1432>0x0B byte 4 \b, RGB565 1433>0x0B byte 5 \b, RGB5A3 1434>0x0B byte 6 \b, ARGB8888 1435>0x0B byte 8 \b, CI4 1436>0x0B byte 9 \b, CI8 1437>0x0B byte 14 \b, DXT1 1438 1439# Sega GVR image. 14400 string GVRT Sega GVR image: 1441>0x10 use sega-gvr-image-header 1442 1443# Sega GVR image with GBIX. 14440 string GBIX 1445>0x10 string GVRT Sega GVR image: 1446>>0x10 use sega-gvr-image-header 1447>>0x08 belong x \b, global index = %u 1448