xref: /freebsd/contrib/file/magic/Magdir/iff (revision ae316d1d1cffd71ab7751f94e10118777a88e027)
1b6cee71dSXin LI
2b6cee71dSXin LI#------------------------------------------------------------------------------
3*ae316d1dSXin LI# $File: iff,v 1.20 2024/02/09 00:44:31 christos Exp $
4b6cee71dSXin LI# iff:	file(1) magic for Interchange File Format (see also "audio" & "images")
5b6cee71dSXin LI#
6b6cee71dSXin LI# Daniel Quinlan (quinlan@yggdrasil.com) -- IFF was designed by Electronic
7b6cee71dSXin LI# Arts for file interchange.  It has also been used by Apple, SGI, and
8b6cee71dSXin LI# especially Commodore-Amiga.
9b6cee71dSXin LI#
10b6cee71dSXin LI# IFF files begin with an 8 byte FORM header, followed by a 4 character
11b6cee71dSXin LI# FORM type, which is followed by the first chunk in the FORM.
12b6cee71dSXin LI
13*ae316d1dSXin LI# URL:		http://fileformats.archiveteam.org/wiki/IFF
14*ae316d1dSXin LI#		https://en.wikipedia.org/wiki/Interchange_File_Format
15*ae316d1dSXin LI# Reference:	https://wiki.amigaos.net/wiki/IFF_FORM_and_Chunk_Registry
16*ae316d1dSXin LI# Note:		called "Interchange File" by DROID via PUID x-fmt/157 and
17*ae316d1dSXin LI#		"IFF file" or as alias expanded "Interchange File Format" by shared MIME-info database from freedesktop.org
18b6cee71dSXin LI0	string		FORM		IFF data
19b6cee71dSXin LI#>4	belong		x		\b, FORM is %d bytes long
20b6cee71dSXin LI# audio formats
21*ae316d1dSXin LI# Update:	Joerg Jenderek
22*ae316d1dSXin LI# URL:		http://fileformats.archiveteam.org/wiki/AIFF
23*ae316d1dSXin LI#		https://en.wikipedia.org/wiki/Audio_Interchange_File_Format
24*ae316d1dSXin LI# Reference:	http://mark0.net/download/triddefs_xml.7z/defs/a/audio-aiff.trid.xml
25*ae316d1dSXin LI# Note:		called "AIFF Audio Interchange File Format" by TrID and
26*ae316d1dSXin LI#		"Audio Interchange File Format" by DROID via PUID fmt/414
27b6cee71dSXin LI>8	string		AIFF		\b, AIFF audio
28b6cee71dSXin LI!:mime	audio/x-aiff
29*ae316d1dSXin LI# not officially registered
30*ae316d1dSXin LI#!:mime	audio/aiff
31*ae316d1dSXin LI!:ext	aiff/aif/aff
32b6cee71dSXin LI>8	string		AIFC		\b, AIFF-C compressed audio
33b6cee71dSXin LI!:mime	audio/x-aiff
34b6cee71dSXin LI>8	string		8SVX		\b, 8SVX 8-bit sampled sound voice
35b6cee71dSXin LI!:mime	audio/x-aiff
36b6cee71dSXin LI>8	string		16SV		\b, 16SV 16-bit sampled sound voice
37b6cee71dSXin LI>8	string		SAMP		\b, SAMP sampled audio
38b6cee71dSXin LI>8	string		MAUD		\b, MAUD MacroSystem audio
39b6cee71dSXin LI>8	string		SMUS		\b, SMUS simple music
40b6cee71dSXin LI>8	string		CMUS		\b, CMUS complex music
41b6cee71dSXin LI# image formats
42b6cee71dSXin LI>8	string		ILBMBMHD	\b, ILBM interleaved image
43b6cee71dSXin LI>>20	beshort		x		\b, %d x
44b6cee71dSXin LI>>22	beshort		x		%d
45b6cee71dSXin LI>8	string		RGBN		\b, RGBN 12-bit RGB image
46b6cee71dSXin LI>8	string		RGB8		\b, RGB8 24-bit RGB image
47b6cee71dSXin LI>8	string		DEEP		\b, DEEP TVPaint/XiPaint image
48b6cee71dSXin LI>8	string		DR2D		\b, DR2D 2-D object
49b6cee71dSXin LI>8	string		TDDD		\b, TDDD 3-D rendering
50b6cee71dSXin LI>8	string		LWOB		\b, LWOB 3-D object
51b6cee71dSXin LI>8	string		LWO2		\b, LWO2 3-D object, v2
52b6cee71dSXin LI>8	string		LWLO		\b, LWLO 3-D layered object
53b6cee71dSXin LI>8	string		REAL		\b, REAL Real3D rendering
54b6cee71dSXin LI>8	string		MC4D		\b, MC4D MaxonCinema4D rendering
55b6cee71dSXin LI>8	string		ANIM		\b, ANIM animation
56b6cee71dSXin LI>8	string		YAFA		\b, YAFA animation
57b6cee71dSXin LI>8	string		SSA\ 		\b, SSA super smooth animation
5843a5ec4eSXin LI>8	string		FANT		\b, Fantavision animation
59b6cee71dSXin LI>8	string		ACBM		\b, ACBM continuous image
60b6cee71dSXin LI>8	string		FAXX		\b, FAXX fax image
6143a5ec4eSXin LI>8	string		STFX		\b, ST-Fax image
62a4d6d3b8SXin LI>8	string		IMAGIHDR	\b, CD-i image
63b6cee71dSXin LI# other formats
64b6cee71dSXin LI>8	string		FTXT		\b, FTXT formatted text
65b6cee71dSXin LI>8	string		CTLG		\b, CTLG message catalog
66b6cee71dSXin LI>8	string		PREF		\b, PREF preferences
67b6cee71dSXin LI>8	string		DTYP		\b, DTYP datatype description
68*ae316d1dSXin LI# Update:	Joerg Jenderek
69*ae316d1dSXin LI# Reference:	http://mark0.net/download/triddefs_xml.7z/defs/i/iff-pch.trid.xml
70*ae316d1dSXin LI# Note:		called "IFF binary Patch" by TrID
71b6cee71dSXin LI>8	string		PTCH		\b, PTCH binary patch
72*ae316d1dSXin LI#!:mime		application/octet-stream
73*ae316d1dSXin LI#!:mime		application/x-iff
74*ae316d1dSXin LI#!:mime		application/x-amiga-patch
75*ae316d1dSXin LI!:ext		patch/pch
76b6cee71dSXin LI>8	string		AMFF		\b, AMFF AmigaMetaFile format
77b6cee71dSXin LI>8	string		WZRD		\b, WZRD StormWIZARD resource
7843a5ec4eSXin LI>8	string		DOC\040		\b, DOC desktop publishing document
7943a5ec4eSXin LI>8	string		SWRT		\b, SWRT Final Copy/Writer document
8043a5ec4eSXin LI>8	string		WORD		\b, ProWrite document
8143a5ec4eSXin LI>8	string 		WTXT		\b, WTXT Wordworth document
8243a5ec4eSXin LI>8	string 		WOWO		\b, WOWO Wordworth document
83b6cee71dSXin LI>8	string		WVQA 		\b, Westwood Studios VQA Multimedia,
84b6cee71dSXin LI>>24	leshort		x		%d video frames,
85b6cee71dSXin LI>>26	leshort		x		%d x
86b6cee71dSXin LI>>28	leshort		x		%d
87b6cee71dSXin LI>8	string		MOVE		\b, Wing Commander III Video
88b6cee71dSXin LI>>12	string		_PC_		\b, PC version
89b6cee71dSXin LI>>12	string		3DO_		\b, 3DO version
90b6cee71dSXin LI
91b6cee71dSXin LI# These go at the end of the iff rules
92b6cee71dSXin LI#
939ce06829SXin LI# David Griffith <dave@661.org>
94b6cee71dSXin LI# I don't see why these might collide with anything else.
95b6cee71dSXin LI#
96b6cee71dSXin LI# Interactive Fiction related formats
97b6cee71dSXin LI#
98b6cee71dSXin LI>8	string		IFRS		\b, Blorb Interactive Fiction
99b6cee71dSXin LI>>24	string		Exec		with executable chunk
100b6cee71dSXin LI>8	string          IFZS		\b, Z-machine or Glulx saved game file (Quetzal)
1019ce06829SXin LI!:mime	application/x-blorb
102