Refactoring - Moved some functions to new fmtutil-iff.c file
[deark.git] / formats.txt
blob4741015fa53d78865c1afec361412f842b14242c
1 Deark -- Information about supported formats
4 === Image format modules ===
6 (Images that are not "extracted" will be converted to PNG, except as noted.)
8 * Alias PIX, a.k.a. Vivid ray tracer bitmap (module="alias_pix")
9   - Truecolor only. Grayscale not supported.
11 * Alpha Microsystems BMP (module="alphabmp") (experimental)
13 * Amiga Workbench Icon (module="amigaicon")
14   - Original format: Mostly supported, but the format is not portable, and
15     there is not just one correct way to render the images.
16   - NewIcons: Fully supported.
17   - GlowIcons / OS3.5: Compressed images are supported. Uncompressed images are
18     not.
20 * AMOS Picture Bank (module="abk")
22 * AMOS Sprite Bank (AmSp) / AMOS Icon Bank (AmIc) (module="abk")
24 * ANI (Windows Animated Cursor) (part of module "riff")
25   - Extract individual CUR and ICO files.
27 * ANIM (Amiga IFF-ANIM) (module="anim")
28   - Supports most common formats.
29   - Extract the individual frames.
30   Options
31    -opt anim:includedups - Do not suppress duplicate frames.
33 * Animatic Film (module="animatic")
34   - Extract the individual frames.
35   Options
36    -opt atari:palbits=<n> (refer to readme.md)
38 * ANSI Art (module="ansiart")
39   - Autodetection usually works, but not always. You may have to use
40      "-m ansiart" or "-m ansi".
41   - Supports only the most common escape codes, which is usually good enough.
42   - Some features depend on the output format. "Blink" is not supported with
43      image output, for example.
44   Options
45    -opt char:output=image - Output to a bitmap instead of HTML
46    -opt char:width=<n> - Number of characters per row
47    -opt ansiart:no24bitcolor - Disable support for 24-bit color definitions
48    -opt ansiart:noblink - Disable blinking characters, enabling high-intensity
49      background colors. This is usually unnecessary, as well-formed files will
50      explicitly disable blink.
51    -opt ansiart:vt100 - Use VT100 mode
53 * Apple volume label image (module="applevol")
55 * ART - PFS: 1st Publisher clip art (module="fp_art")
57 * ArtWorx Data Format (ADF) (module="artworx_adf")
59 * AutoCAD Slide Library (.slb) (module="autocad_slb")
60   - Extracts the component AutoCAD Slide (.sld) files.
62 * Award BIOS logo (EPA, AWBM) (module="awbm")
63   - Supports version 1
64   - Supports 4-bit and 8-bit version 2
65   Options
66    -opt awbm:rgb=0 - (v2) Assume BGR sample order (default for 4-bit)
67    -opt awbm:rgb=1 - (v2) Assume RGB sample order (default for 8-bit)
69 * Binary Text (.BIN character graphics format) (module="bintext")
70   - Must use "-m bintext", unless the file has a SAUCE record.
71   Options
72    -opt char:width=<n> - Number of characters per row
74 * BLD (MegaPaint BLD) (module="bld")
76 * BMI (Zoner bitmap) (module="bmi") (experimental)
78 * BMP (Windows bitmap) (module="bmp")
80 * Bob ray tracer bitmap (module="bob")
82 * BPG (module="bpg") (experimental)
83   - Extract Exif, XMP, ICC Profiles, thumbnails
85 * BSAVE/BLOAD image (module="bsave")
86   Support (some) PC-style BSAVE files.
87   Options
88    -file2 <file.pal> - Use this palette file (BSAVE format)
89    -opt palfile=<file.pal> - Use this palette file (BSAVE format)
90    -opt bsave:width=<n>
91    -opt bsave:height=<n>
92    -opt bsave:fmt=char  - Character graphics
93    -opt bsave:fmt=cga2  - 640x200 2-color
94    -opt bsave:fmt=cga4  - 320x200 4-color
95    -opt bsave:fmt=cga16 - Very low (160x100) resolution
96    -opt bsave:fmt=mcga  - 320x200 256-color
97    -opt bsave:fmt=wh2   - 2-color, header includes width & height
98    -opt bsave:fmt=wh4   - 4 color, header includes width & height
99    -opt bsave:fmt=wh16  - 16 color, header includes width & height, inter-row
100      interlaced
101    -opt bsave:fmt=b265  - Special
102    -opt bsave:fmt=2col  - 2-color noninterlaced (experimental)
103    -opt bsave:fmt=4col  - 4-color noninterlaced (experimental)
105 * Calamus Raster Graphic (module="crg") (experimental)
107 * Cardfile (module="cardfile")
108   - Supports MGC and RRG formats.
109   - Extracts bitmaps.
110   - Extracts text (use -a).
111   - Extracts OLE objects.
112   Options
113    -opt ole1:extractall - Extract unidentified OLE objects
115 * COKE (Atari Falcon) (*.tg1) (module="coke")
117 * Compface intermediate format (module="compfacei")
118   This is an obscure text-based format related to X-Face, used by the Compface
119   software.
120   - Cannot be autodetected. You must use "-m compfacei".
122 * Corel CCX (module="corel_ccx")
123   - Decompresses and converts to CMX format.
125 * CorelDRAW CDR, old "WL" format (module="cdr_wl") (experimental)
126   - Extracts preview image.
128 * Corel Gallery BMF (module="corel_bmf") (experimental)
129   - Extracts preview image.
131 * CorelMOSAIC CLB (module="corel_clb") (experimental)
132   A thumbnail image library, companion to a CLH file.
134 * DIB (module="dib")
135   - Adds a BMP file header to a raw Windows DIB file.
137 * DCX (module="dcx")
138   Multi-image PCX format.
139   - Extracts individual PCX files.
141 * DEGAS and DEGAS Elite (module="degas")
142   Options
143    -opt atari:palbits=<n> (refer to readme.md)
144    -opt atari:respectpal - Don't ignore a seemingly bad 2-color palette
146 * DeskMate Paint .PNT (module="deskmate_pnt")
148 * DL animation (DL MAKER) (module="dlmaker")
149   - Extracts all images and audio clips, in the order they appear in the file.
150   - File extension must be ".dl".
152 * Doodle (Atari) (module="doodle")
153   - Supports high resolution (640x400) only
155 * Dr. Halo .CUT (module="drhalocut")
156   Options
157    -file2 <file.pal> - Read the palette from this file.
159 * EggPaint (*.trp) (module="eggpaint")
161 * Enhanced Windows Metafile (module=emf)
162   - Extract BMP and other images from some records.
164 * EPOC MBM/Sketch/AIF (module="epocimage")
165   - Supports most image types
166   - Supports most compression schemes
168 * EPS (Encapsulated PostScript) (module="eps")
169   - Extract EPS, TIFF, and WMF from "EPS DOS Binary" format.
170   - Supports preview images in EPSI format (1-, 2-, 4-, 8-bit grayscale)
172 * Falcon True Color (module="ftc")
174 * farbfeld (module="farbfeld")
176 * FLI/FLC (Autodesk Animator) (module="fli")
177   - Extract the (non-repeated) frames.
179 * GEM VDI Bit Image (GEM Raster) (module="gemras")
180   - Supports original bilevel format
181   - Supports paletted XIMG format
182   - Supports some non-XIMG 16-color images
183   Options
184    -opt atari:palbits=<n> (refer to readme.md)
186 * GIF (module="gif")
187   - Extract the image, or every frame from an animated or mult-image GIF.
188   - Plain text extensions are supported.
189   - Extract comments (use -a).
190   Options
191    -opt gif:raw - Extract the individual component images, instead of rendering
192      the frame in full. Plain text extensions might be extracted as text files,
193      instead of images of text.
194    -opt gif:dumpplaintext - Extract plain text extensions to text files (in
195      addition to rendering them to the image).
196    -opt gif:dumpscreen - Save a copy of the "screen" after the last image in
197      the file has been disposed of. Incompatible with gif:raw.
199 * GodPaint (Atari Falcon) (module="godpaint")
201 * Graphic Workshop thumbnail (.thn) (module="gws_thn")
203 * GRASP GL animation (module="graspgl")
204   - Extracts all files.
206 * GROB (HP calculator) (module="grob")
207   - Supports binary and text encodings.
208   - Some text GROB files can't be autodetected, and need "-m grob".
209   Options
210    -opt grob:planes=<n> - Treat image as grayscale. <n> should usually be 2.
211    -opt grob:planeorder=l - For grayscale, assume the least-significant
212      bitplane comes first.
214 * Hemera Photo-Object image (module="hpi")
215   - Extracts the color components to a JPEG file, and the alpha component (if
216    present) to a PNG file.
218 * HP 100LX / HP 200LX .ICN icon format (module="hpicn")
220 * HR (TRS-80 High Resolution graphics file) (module="hr")
222 * HS2 (module="hs2")
223   Obscure format associated with a program called "POSTERING"
225 * HSI Raw (module="hsiraw")
227 * icns (Apple Icon) (module="icns")
228   - Supports uncompressed 1-, 4-, and 8-bit images (with 1-bit mask).
229   - Supports RLE-compressed 24-bit images (with 8-bit mask).
230   - Extract embedded JP2 and PNG files.
232 * ICO/CUR (Windows icon/cursor) (module="ico")
233   - Supports most but not all formats.
234   - PNG-formatted icons will be extracted as-is, not decoded.
235   - Extract images of the (otherwise unused) masks for 32-bit images (use -a).
237 * ILBM and related IFF-based images (module="ilbm")
238   - Supports ILBM, ACBM, PBM
239   - Supports 1-8 bit paletted, 24-bit truecolor
240   - Supports HAM6, HAM8, Halfbrite
241   - Supports color-keyed and bitmask transparency
242   - Extract thumbnails from TINY chunks
243   - Extract text from ANNO chunks (use -a)
244   Options
245    -opt ilbm:notrans - Disable support for transparency
246    -opt ilbm:fixpal=<0|1> - Don't/Do try to correct palettes that seem to have
247      fewer than 8 bits of precision.
249 * IndyPaint (*.tru) (module="indypaint")
251 * Inset PIX (module="insetpix") (experimental)
252   - Bitmap images only. Character graphics files are not supported.
254 * InShape IIM (module="iim")
256 * Jovian Logic VI bitmap (module="jovianvi") (experimental)
258 * JPEG and JPEG-LS (module="jpeg")
259   - Extract ICC profiles.
260   - Extract JFXX JPEG-formatted thumbnails (rare).
261   - Extract JFIF uncompressed thumbnails (rare).
262   - Extract XMP data, including "extended XMP".
263   - Extract JPEG-HDR residual images.
264   - Process Exif data (or extract it: use -a)
265   - Process Photoshop-related data.
266   - Extract Multi-Picture Format (MPF/MPO) thumbnails and other images.
267   - Extract comments (use -a). Comment bytes are extracted as-is, or
268      interpreted based on the "-inenc" option.
269   - Extract Exif FPXR streams (use -a).
271 * JPEG 2000 (module="jpeg2000")
272   - Extract JPEG 2000 codestream from JP2/JPX/JPM formats.
273   - Extract XML data.
274   - Extract GeoTIFF data.
275   - Extract XMP data.
276   - Extract Exif data (use -a) (nonstandard; partial support)
277   - Process Photoshop-related data.
279 * JPEG 2000 codestream (module="j2c")
280   - Extract comments (use -a).
282 * JPEG XR (HD Photo) (part of module "tiff")
283   - Minimal support.
285 * LSS16 (SYSLINUX image) (module="lss16")
287 * Lumena CEL (module="lumena_cel")
288   - Single-image files only
290 * MacPaint (module="macpaint")
291   - Can also decode brush patterns (use -a)
292   Options
293    -opt macpaint:macbinary=<0|1>
295 * Magic Desk icon (module="mdesk_icn")
297 * MAKIchan graphics (module="makichan")
298   - Supports most 16- and 256-color .MAG images
299   - Supports most 16-color .MKI images
300   - Does not support .MAX
302 * MegaPaint Symbol Library (.lib) (module="megapaint_lib") (experimental)
304 * MegaPaint Patterns (.pat) (module="megapaint_pat") (experimental)
306 * MRW (Minolta RAW) (module="mrw")
307   - Process Exif data (or extract it: use -a)
309 * MSP (Microsoft Paint graphics) (module="msp")
310   - Version 1 and 2
312 * MS Word for DOS Screen Capture (module="mswordscr")
313   Supports the same options as the pcx module.
315 * NEOchrome (.NEO) (module="neochrome")
316   Options
317    -opt atari:palbits=<n> (refer to readme.md)
319 * NEOchrome Animation (module="neochrome_ani") (experimental)
321 * New Print Shop .POG format (module="newprintshop")
322   Options
323    -file2 <file.pnm> - Use this "name" file
324    -opt namefile=<file.pnm> - Use this "name" file
326 * NIE/NII/NIA (module="nie") (experimental)
327   The "Naive Image Formats" associated with the Wuffs project.
329 * NGG (Nokia Group Graphic) (module="ngg")
331 * NLM (Nokia Logo Manager bitmap) (module="nlm")
333 * NOL (Nokia Operator Logo) (module="nol")
335 * NPM (Nokia Picture Message) (module="npm")
337 * NSL (Nokia Startup Logo) (module="nsl")
339 * OLPC .565 firmware icon (module="olpc565")
341 * OS/2 Icon, Pointer, Bitmap Array formats (module="os2bmp")
342   - Converts icons & pointers to individual PNG files.
343   - Icon, pointer, and BMP image files are extracted from Bitmap Array files.
344     Reprocess icon and pointer files to convert to PNG.
346 * PaintShop Pro Browser Cache (module="jbf")
347   - Format v1.x: BMP files are reconstructed and extracted.
348   - Format v2.x: JPEG files are extracted.
350 * Palm BitmapType (module="palmbitmap")
351   - Cannot easily be autodetected. You must use "-m palmbitmap", except in most
352     cases when the file extension is ".palm".
353   - May be found inside some Palm files. See also the notes for the "Palm PRC"
354     and "Palm PDB/PQA" modules.
355   Options
356    -opt palm:le - Assume little-endian byte order
358 * Palm Database (PDB) ImageViewer/FireViewer (part of module "palmdb")
360 * PCPaint / Pictor (module="pcpaint")
361   - Supports PIC and CLP formats. Some files are not portable, because they use
362     a nonstandard palette that is not contained in the file.
363   - Supports most images with 8 or fewer bits/pixel.
364   - Supports character graphics (experimental).
365   Options
366    -opt pcpaint:fmt=pic
367    -opt pcpaint:fmt=clp
368    -file2 <file.pic> - PIC file to read the palette from
369    -opt palfile=<file.pic> - PIC file to read the palette from
371 * PCX (module="pcx")
372   - Supports most of the common varieties of PCX.
373   Options
374    -opt pcx:pal=<0|1> - The predefined palette to use, if there is no palette
375      in the file. Default is 0.
376    -opt pcx:resmode=<ignore|dpi|screen|auto> - How to interpret the
377      "resolution" field. "screen" means as the target screen mode's pixel
378      dimensions (assumes 4:3 screen). The default is "auto", which means to
379      guess.
380    -file2 <file.p13> - Read the palette from a separate file. Each entry is 3
381      bytes (R,G,B); samples range from 0-63.
383 * PGC (Portfolio graphics compressed) (module="pgc")
385 * PGF (Portfolio graphics) (module="pf_pgf")
387 * PGX (Portfolio graphics animation) (module="pgx")
388   - Extract embedded PGC images.
390 * PI4 (Atari Falcon 320x240) (module="fpaint_pi4")
392 * PI7 (Atari Falcon 640x480) (module="atari_pi7")
394 * PI9 (Atari Falcon 320x200) (module="fpaint_pi9")
396 * PICT (Macintosh image) (module="pict")
397   - Extract bitmap images.
399 * PM (module="pm_xv") (experimental/incomplete)
400   This is an obscure format supported by XV and XnView.
401   - Supports 24-bit truecolor, and 8-bit grayscale
403 * PNG / MNG / JNG (module="png")
404   - Extract XMP data.
405   - Extract ICC profiles.
406   - Extract or process various other metadata formats.
407   - Extract frame images (may be image fragments) from APNG files.
408   Options
409    -opt png:extractapng=0 - Do not extract APNG frames
411 * PNM/PBM/PGM/PPM/PAM (module="pnm")
413 * PrintMaster .SHP format (module="printmaster")
414   Options
415    -file2 <file.sdr> - Use this "name" file
416    -opt namefile=<file.sdr> - Use this "name" file
418 * PrintPartner .GPH (module="pp_gph")
420 * Print Shop .DAT format (module="printshop")
421   - Not all files can be autodetected. You may need "-m printshop".
422   Options
423    -file2 <file.sdr> - Use this "name" file
424    -opt namefile=<file.nam> - Use this "name" file
426 * Prism Paint (module="prismpaint")
427   - Supports 1-, 2-, 4-, 8-, and 16-bits per pixel
429 * PSD / PSB (Photoshop) (module="psd")
430   - Basic support for RGB/grayscale/paletted 8/16-bit images
431   - Extract JPEG thumbnails. Some thumbnail images have the red and blue
432     channels swapped -- Deark warns about this, but does not correct it.
433   - Extract XMP data.
434   - Extract ICC profiles.
435   - Extract linked layer image data (could be PNG/JPG/PSD/etc. format).
436   - Process Exif data (or extract it: use -a)
437   - Extract IPTC-IIM data (use -a).
438   - Extract "text engine data" (use -a)
440 * Psion PIC (module="psionpic")
441   A Psion PIC file contains one or more 1-bpp bitmaps, some of which can be
442   combined to make grayscale images. Deark will try to guess which images
443   should be combined, but it may not always get it right.
444   - Supports 1- and 2-bit grayscale.
445   Options
446    -opt psionpic:bw - Do not try to detect grayscale images. Write each bitmap
447      as a separate image.
449 * QDV (Giffer) (module="qdv")
451 * QTIF (QuickTime image) (module="qtif")
452   - Extract embedded JPEG, TIFF, and other image files.
453   - Decode some "raw" (uncompressed) images.
455 * RIPscrip icon (.ICN) or BGI image (module="ripicon") (experimental)
456   - Not all files are autodetected. You may need "-m ripicon".
457   - Only 16-color images are supported.
459 * RISC OS / Acorn Sprite (module="rosprite")
460   - Autodetection may not always work. May need "-m rosprite".
461   - "Old" format is pretty well supported.
462   - "New" format is mostly supported, but not well-tested.
464 * RISC OS / Acorn Draw (module="rodraw") (experimental)
465   - Extract sprite image files.
467 * RSC (GEM resource) (module="rsc") (experimental)
468   - Supports both "old" and "new" formats.
469   - Extracts icons and bitmaps.
470   Options
471    -opt rsc:fmt=<atari|pc> - Use this byte order. Default is to autodetect.
473 * SHG and MRB (module="shg")
474   Segmented Hypergraphics and Multi-Resolution Bitmap formats are used in
475   Windows .HLP files.
476   - Converts bitmap graphics to BMP format.
477   - Extracts WMF files.
479 * Spectrum 512 Compressed (.spc) (module="spectrum512c")
480   Options
481    -opt spectrum512:tospu - Output to an .spu file
483 * Spectrum 512 Smooshed (.sps) (module="spectrum512s")
484   Options
485    -opt spectrum512:tospu - Output to an .spu file
487 * Spectrum 512 uncompressed (.spu) (module="spectrum512u")
488   Options
489    -opt atari:palbits=<n> (refer to readme.md)
491 * STOS Memory Bank (.mbk) (module="stos")
492   - Decode "sprite bank" images
493   - Decode "icon bank" images
494   Options
495    -opt atari:palbits=<n> (refer to readme.md)
497 * Sun Raster (module="sunras") (incomplete)
498   - Supports most common image types
499   Options
500    -opt sunras:fmt32=<xbgr|abgr|xrgb|argb|bgrx|bgra|rgbx|rgba> - Specify the
501      interpretation of a 32-bit pixel
503 * TGA (Targa) (module="tga")
505 * Thumbs.db (Windows thumbnail) (part of module "cfb")
506   - Extract thumbnail files (embedded JPEG or PNG files)
507   - Some thumbnails use a nonstandard RGBA format. These are not converted to
508     a portable format.
510 * TI calculator "variable" files (module="tivariable")
511   - TI73/TI82/TI83 pictures
512   - TI85/TI86 pictures
513   - TI89/TI92/TI92+ pictures
515 * TIFF and Exif (module="tiff")
516   - Decode most images, excluding lossy-compressed images.
517   - Extract JPEG-formatted Exif thumbnails, and some types of JPEG-compressed
518     images.
519   - Extract ICC profiles.
520   - Process Photoshop-related data.
521   - Extract IPTC-IIM data (use -a).
522   Options
523    -opt tiff:decode=0 - Do not decode images
525 * TIM (Playstation graphics) (module="tim") (experimental/incomplete)
527 * Tiny Stuff (.TNY, .TN1, .TN2, .TN3) (module="tinystuff")
528   Options
529    -opt atari:palbits=<n> (refer to readme.md)
530    -opt atari:respectpal - Don't ignore a seemingly bad 2-color palette
532 * VBM (VDC BitMap) (module="vbm")
533   - Version 2 only
535 * VITec image format (module="vitec) (experimental/incomplete)
537 * VORT ray tracer .pix image (module="vort") (experimental/incomplete)
539 * Windows 1.0 ICO/CUR (module="win1ico")
541 * Windows Metafile (module=wmf)
542   - Extract BMP images from some records.
543   - Extract embedded EMF documents.
545 * Winzle (module=winzle)
546   - Convert Winzle obfuscated BMP (.wzl) to BMP.
548 * WordPerfect Graphics (module=wpg)
549   - Extract bitmaps
551 * X11 puzzle (module="xpuzzle")
552   Format used by X-Windows "puzzle" program.
553   ftp://ftp.x.org/pub/unsupported/programs/puzzle/
554   Generated by Netpbm's ppmtopuzz utility.
556 * XBIN (module="xbin")
557   Renders XBIN character graphics to a bitmap (default) or HTML.
558   - Extract embedded fonts (use -a).
559   Options
560    -opt char:output=html - Use HTML output format
562 * X-Face (icon/avatar format) (module="xface")
563   - You may have to use "-m xface".
565 * XGA (Atari Falcon image) (module="falcon_xga")
567 * YBM (Bennet Yee face format) (module="ybm")
569 * ZBR ((Zoner) Zebra Metafile) (module="zbr")
570   - Extract the preview image.
572 === Font formats ===
574 * FNT (Windows font) (module="fnt")
575   Most FNT files have an extra "absolute space" character, which Deark
576   arbitrarily places at code point 256, or U+2002 (EN SPACE).
578 * GEM bitmap font (module="gemfont") (experimental)
579   - Autodetection may not always work. May need "-m gemfont".
581 * GRASP font (module="graspfont") (experimental)
582   .set/.fnt; may be found inside GRASP .gl files.
584 * PCF font (module="pcf") (experimental/incomplete)
586 * PC Screen Font (PSF) (module="psf")
587   Options
588    -opt font:noaliases - Restrict to one Unicode codepoint per glyph
590 * PFF2 font (module="pff2")
592 * PK font (Packed Font) (module="pkfont") (partial support)
594 * Unifont HEX (module="unifont_hex")
595   - Cannot be autodetected. You must use "-m unifont_hex".
597 === Compression, archive, installer, disk image modules ===
599 * ADF (Amiga disk image) (module="amiga_adf") (experimental)
601 * ARC archive (module="arc")
602   - Some rare compression methods are not supported.
604 * ArcFS (module="arcfs")
606 * ArcMac (module="arcmac") (experimental)
607   Variant of ARC.
609 * ARJ (module="arj") (experimental)
611 * AmBs (AMOS "Banks" aggregate format) (module="abk")
612   - Extract AmSp, AmIc, AmBk files.
614 * Apple Partition Map (module="apm") (experimental)
616 * AppleSingle/AppleDouble (module="applesd")
617   AppleDouble files often have names beginning with "._".
618   - Extract data fork.
619   - Extract (default for AppleSingle) or decode (default for AppleDouble)
620     resource fork.
621   Options
622    -opt applesd:extractrsrc=<0|1> - Specify whether the resource fork is
623      decoded (0), or extracted (1).
625 * ar (.a archive/library format) (module="ar") (experimental/incomplete)
626   - Supports System V long filenames
628 * ATR (Atari disk image) (module="atr") (experimental/incomplete)
630 * BinHex (.hqx) (module="binhex")
631   - Extract data and resource forks to separate files.
633 * CAB (Microsoft Cabinet) (module="cab")
634   - Files can be parsed, but there is usually nothing that can be extracted
635     from them.
637 * ARX (module="arx") (experimental)
638   Variant of LHA. Deark tries to convert it to LHA.
640 * CAR (module="car_lha")
641   Variant of LHA by MylesHi! Software. Deark tries to convert it to LHA.
642   - File extension must be ".car" (or use "-m car").
644 * CD/raw (module="cd_raw")
645   - Extract .ISO and other filesystem data from some raw CD images, such as
646     the .BIN file in CUE/BIN format.
648 * compress (legacy Unix .Z format) (module="compress")
650 * cpio (module="cpio")
652 * CRLZH (module="crlzh")
653   An old compressed file format used mainly on CP/M.
655 * Crunch (module="crunch")
656   An old compressed file format used mainly on CP/M.
657   - The header can be parsed, but only the rare v1.x format can be
658     decompressed.
660 * CRUSH (.cru) (module="crush")
661   CRUSH is a DOS archive utility by PocketWare.
663 * D64 (Commodore 64 disk format) (module="d64") (experimental)
665 * DMS (Amiga disk image) (module="amiga_adf") (experimental)
666   - Decompresses to ADF format.
668 * Doom WAD (module="wad")
669   - The extracted files are usually in specialized formats.
671 * FAT (module="fat") (experimental/incomplete)
672   - Limited support, mainly for floppy disk images.
674 * Gzip (module="gzip")
676 * HFS filesystem image (module="hfs") (experimental/incomplete)
677   - Incomplete support, but should be enough for most CD-ROM images.
679 * InstallShield Z archive (module="is_z") (experimental)
681 * ISO 9660 CD-ROM image (module="iso9660")
682   Options
683    -opt iso9660:tolower - Convert filenames to lowercase. Does not affect Rock
684      Ridge or Joliet filenames.
685    -opt iso9660:voldesc=<n> - Use the volume descriptor at sector <n>. A
686      typical use is to set n=16 to ignore Joliet extensions.
688 * LBR (module="lbr")
689   LRB is an uncompressed CP/M archive format.
690   - These often contain files in compressed formats known as Squeeze, Crunch,
691   and CrLZH. Deark doesn't necessarily support all of those formats.
693 * LHA/LZH/PMA (module="lha")
694   - All common compression methods are supported.
695   Options
696    -opt lha:lhark - Assume "lh7" compression is LHARK format, instead of the
697      standard lh7 format. (Unfortunately, autodetecting LHARK is impractical.)
699 * LoadDskF/SaveDskF (module=loaddskf)
700   An OS/2 floppy disk image format.
701   - By default, non-compressed files are interpreted (as with FAT).
702   - Compressed files are decompressed.
703   Options
704    -opt loaddskf:toraw - Convert to raw FAT/IMA format.
706 * LZWCOM (module="lzwcom")
707   LZWCOM/LZWUNC is an old file compression utility.
708   - Not autodetected; you must use "-m lzwcom". In rare cases, you must also
709     specify the version.
710   Options
711   -opt lzwcom:version=<1|2> : The format version.
713 * MacBinary (module="macbinary")
714   - You may have to use "-m macbinary".
716 * Microsoft Compound File Binary (module="cfb")
717   - Streams are not extracted by default, but some streams contain images and
718     other objects that can be extracted.
719   Options
720    -opt cfb:extractstreams - Extract raw streams, instead of decoding.
721    -opt cfb:fmt=raw - Do not try to detect the document type.
722    -opt cfb:fmt=auto - Autodetect the document type (default).
723    -opt cfb:fmt=thumbsdb - Treat the file as a Thumbs.db file.
725 * Microsoft Installation Compression (module="mscompress")
727 * MSA (Magic Shadow Archiver) (module="msa") (experimental)
728   - Atari ST disk image format.
729   Options
730    -opt msa:toraw - Instead of decoding, extract to raw ".ST" format (this is
731      usually a FAT format).
732    -opt msa:touncmsa - Instead of decoding, convert to uncompressed MSA.
734 * NRG (module="nrg") (experimental)
735   Nero CD image format.
736   - Extract or decode ISO 9660 data.
738 * Pack (module="pack") (experimental)
739   Old Unix compressed file format (.z).
741 * PackDir (module="packdir") (experimental)
743 * Palm PDB/PQA (module="palmdb")
744   - You may have to use "-m palmdb".
745   - Use -a to extract the record blocks, but note that they are usually not in
746     well-known formats.
747   Options
748    -opt timestampfmt=<macbe|unixbe|macle> - The timestamp format to assume.
750 * Palm PRC (module="palmrc")
751   - You may have to use "-m palmrc".
752   - Use -a to extract the record blocks, but note that they are usually not in
753     well-known formats.
754   - Extracted ".palm" files are in Palm BitmapType format. Reprocess them to
755     convert to PNG.
757 * Pasti (.stx) (module="pasti") (experimental)
758   - Atari ST disk image format.
759   Options
760    -opt pasti:toraw - Instead of decoding, extract to raw ".ST" format (this is
761      usually a FAT format).
763 * RPM (package manager) (module="rpm")
764   - Extract compressed cpio file.
766 * SIS (EPOC/Symbian archive) (module="sis")
767   - EPOC release 3/4/5/6
769 * Spark archive (module="spark")
770   Options
771    -opt spark:recurse=0 - Extract subdirectories as Spark files
773 * Squash (module="squash")
774   A variant of "compress", used on RISC OS.
776 * Squeeze (module="squeeze")
777   An old compressed file format used mainly on CP/M.
778   - SQ2 variant is also supported (experimental).
780 * StuffIt (.sit) (module="stuffit")
781   - Limited support. Old format only.
783 * tar (module="tar")
784   - Rare files may need "-m tar", as tar is difficult to autodetect.
786 * TTComp (module="ttcomp")
787   - In rare cases, you may have to use "-m ttcomp".
789 * WOZ (module="woz") (incomplete)
790   Apple II disk image format.
791   - Some metadata is parsed, but the disk contents are not extracted or listed.
793 * ZIP (module="zip")
794   - Supports most compression methods.
795   - Extract main ZIP file comment (use -a).
796   - Extract comments for individual files (use -a).
797   Options
798    -opt zip:scanmode - Attempt to read the file without using the ZIP "central
799      directory". Not recommended, but allows some damaged ZIP files to be read.
801 * zlib (module="zlib")
802   - Raw zlib files are uncompressed.
804 * Zoo (module="zoo")
805   - Extract comments (use -a).
806   Options
807    -opt zoo:undelete - Also extract deleted files.
809 * Zoo filter format (module="zoo_filter")
810   Format created by "zoo fc".
812 * Zoo Z format (module="zoo_z")
813   Format created by "zoo xz <foo.zoo> [...]". Not all Zoo programs support it.
814   - Will be translated to Zoo format.
816 * ZSQ (module="zsq")
817   Compressed file format related to LZWCOM.
819 == Transfer encoding modules ==
821 * Ascii85 (module="ascii85") (incomplete)
822   - Supports old and new btoa formats
823   - Supports data with "<~" / "~>" delimiters
825 * Base16 (module="base16" or "hex")
826   - Decode "hex encoded" data.
827   - Not autodetected; use "-m base16".
828   - Only supports raw data, such as that produced by "xxd -p". Does not
829     support full hex dumps.
831 * Base64 (module="base64")
832   - Not autodetected; use "-m base64".
834 * Uuencoded (module="uuencode")
836 * Xxencoded (module="xxencode")
838 === Other modules ===
840 * AMOS source code (module="amos_source")
841   - Extract AmBs resource file.
843 * ASF multimedia (module="asf")
844   - Files can be parsed, but there is usually nothing that can be extracted
845     from them.
847 * Byte frequency analysis (module="bytefreq")
848   Print a table showing how many times each byte value occurs.
849   - You must use "-m bytefreq".
851 * C64 BASIC (module="basic-c64") (experimental)
852   - Detokenize C64 BASIC programs
854 * Copy (module="copy")
855   - "Extract" the entire file. Use with -start and -size to extract part of
856     the file.
858 * CP437 (module="cp437")
859   Convert DOS Code Page 437 text to UTF-8.
860   - Not autodetected. Use "-m cp437".
861   - Note that code points below 0x20 are ambiguous. Deark tries to guess which
862     ones are control characters.
864 * CRC (module="crc")
865   Print various CRC hashes and checksums of the file, including the IEEE
866   CRC-32.
867   - You must use "-m crc".
869 * DS_Store (module="dsstore") (experimental)
870   Metadata format associated with MacOS Finder.
872 * EBML/Matroska/MKV/WebM (module="ebml")
873   Options
874    -opt ebml:encodedid - Also print element ID numbers in raw (encoded) form.
876 * EXE/PE/NE/etc. (module="exe")
877   EXE format can be complex. Not all varieties are correctly supported.
878   - Extract bitmaps, icons, and cursors from NE and PE (Windows .exe) files.
879   - Extract fonts.
880   - Extract embedded manifests (use -a).
881   - Extract code-signing certificates (use -a).
882   - Extract bitmaps from LX (Linear Executable) files. Note that some of these
883     may be in "Bitmap Array" format. Reprocess them with Deark to extract the
884     actual BMP file(s).
885   - Extract icons and cursors from LX files. Note that these will use OS/2
886     format. Reprocess them with Deark to convert to PNG.
888 * FLAC audio (module="flac")
890 * Hex dump (module="hexdump")
891   Print a hex dump of the file.
892   - You must use "-m hexdump".
894 * HLP (Windows Help) (module="hlp")
895   Options
896    -opt hlp:extracttext - Write the file's text (unformatted) to a file. This
897      feature is experimental and incomplete.
898    -opt hlp:extractstreams - Extract raw files, instead of decoding.
900 * ICC profile (module="iccprofile")
901   - Debug info only.
903 * IFF (Interchange File Format) (module="iff")
904   - IFF can be parsed, but in many cases nothing can be extracted from it.
905   Options
906    -opt iff:align=<n> - Assume chunks are padded to an n-byte boundary.
908 * IPTC-IIM metadata (module="iptc")
909   - Extract captions/abstracts (use -a).
910   - Extract raster caption bitmaps.
912 * ISO-BMFF (module="bmff") (incomplete)
913   - MP4, QuickTime .mov, HEIF, etc.
914   Options
915    -opt bmff:maxentries=<n> - Maximum number of sample table entries to print
916      when using -d. This applies to several boxes, such as 'stsz'.
918 * JPEG scan (module="jpegscan")
919   - This module tries to find and extract embedded JPEG and JPEG-LS files from
920     otherwise-unsupported formats. Use "-m jpegscan".
922 * Macintosh Resource Manager (module="macrsrc") (experimental/incomplete)
923   This is the format generally used by Mac resource forks.
924   Options
925    -opt macrsrc:extractraw - Extract all resources directly to files.
927 * MIDI (module="midi")
928   - Files can be parsed, but there is usually nothing that can be extracted
929     from them.
931 * Monkey's Audio (.ape) (module="monkeys_audio")
932   - Minimal support. Decodes APE tag metadata.
934 * MP3 / MPEG audio (module="mpegaudio" or "mp3")
935   - Not all files can be autodetected.
936   - Mainly for ID3 and APE metadata. The audio data is not converted.
938 * NULL (module="null")
939   - Do nothing.
941 * Ogg (Vorbis, Theora, etc.) (module="ogg")
942   - Files can be parsed, but there is usually nothing that can be extracted
943     from them.
944   Options
945    -opt ogg:hexdump - With -d, include a hex dump of more data than usual.
947 * Photoshop Action format (.atn) (module="ps_action")
948   - Files can be parsed, but there is usually nothing that can be extracted
949     from them.
951 * Photoshop Brush format (.abr) (module="ps_brush")
952   - Files can be parsed, but there is usually nothing that can be extracted
953     from them.
955 * Photoshop Custom Shapes format (.csh) (module="ps_csh")
956   - Files can be parsed, but there is usually nothing that can be extracted
957     from them.
959 * Photoshop Gradient format (.grd) (module="ps_gradient")
960   - Supports file version 5 only (Photoshop 6+)
961   - Files can be parsed, but there is usually nothing that can be extracted
962     from them.
964 * Photoshop Patterns format (.pat) (module="ps_pattern")
965   - Files can be parsed, but there is usually nothing that can be extracted
966     from them.
968 * Photoshop Styles format (.asl) (module="ps_styles")
969   - Files can be parsed, but there is usually nothing that can be extracted
970     from them.
972 * Plain text (module="plaintext")
973   Read a plain text file, and write it as UTF-8.
974   - Not autodetected. Use "-m plaintext".
975   - See also the "cp437" module, which works better on some files.
977 * .plist Property List (module="plist")
978   - Supports binary .plist format only
979   - Files can be parsed, but there is usually nothing that can be extracted
980     from them.
982 * Psion APP/IMG and OPA/OPO (module="psionapp")
983   - Extract Psion PIC icons.
984   - Extract other contents (use -a).
986 * RIFF (module="riff")
987   Metaformat used by WAV, AVI, WebP, etc.
988   - RIFF can be parsed, but in many cases nothing can be extracted from it.
990 * Split (module="split")
991   Split the file into equal-sized chunks.
992   Options
993    -opt split:size=<n> - The size of each chunk, in bytes.
994    -opt split:stride=<n> - The distance between the start of one chunk and the
995     start of the next chunk, in bytes.
997 * WRI - Microsoft Write (module="wri") (incomplete)
998   - Extract raw text to an HTML file. Very little formatting, etc.
999   - Extract most pictures.
1000   Options
1001    -opt wri:extracttext=0 - Do not extract text
1002    -opt ole1:extractall - Extract unidentified OLE objects