IFF

From MultimediaWiki
Revision as of 20:25, 31 May 2007 by Crybaby (talk | contribs) (Iff moved to IFF)
Jump to navigation Jump to search

IFF (Interchange File Format) is a format developed by electronic arts in the 80's. It is the predominant format on the Amiga computer. It is a chunked format. It can be used to store any type of data, but it is predominantly used to store images, animations and audio.

IFF chunks are always padded to an even number of bytes.

ILBM FOURCC

Images are stored in planes. So, to get a pixels color value you need to combine the bits from each frame to create a color register index.

/* ---------- BitMapHeader ---------------------------------------------*/
/*  Required Bitmap header (BMHD) structure describes an ILBM           */
typedef struct {
 uint16_t             w;                    /* raster width in pixels  */
 uint16_t             h;                    /* raster height in pixels */
 int16_t              x;                    /* x offset in pixels  */
 int16_t              y;                    /* y offset in pixels */
 uint8_t              nplanes;              /* # source bitplanes      */
 uint8_t              masking;              /* masking technique       */
 uint8_t              compression;          /* compression algoithm    */
 uint8_t              pad1;                 /* UNUSED.  For consistency, put 0 here. */
 uint16_t             transparentColor;     /* transparent "color number" */
 uint8_t              xaspect;              /* aspect ratio, a rational number x/y */
 uint8_t              yaspect;              /* aspect ratio, a rational number x/y */
 int16_t              pagewidth;            /* source "page" size in pixels */
 int16_t              pageheight;           /* source "page" size in pixels */
} BitMapHeader;

List Of Chunk FOURCCs

Note: an underscore (_) is used to indicate the space character. 
  • 16SV
  • 8SVX
  • ANFI
  • ANHD ( ANIM Frame )
  • ANIM
  • ANNO
  • ANSQ
  • ATAK
  • AUTH
  • BMHD
  • BODY
  • CAMG
  • CCRT (Graphicraft cycling chunk)
  • CHAN
  • CMAP (Color Map is a packed array of ColorRegisters )
  • (c)_
  • CRNG
  • DEST
  • DLTA
  • DPAN (Deluxe Paint Anim Chunk)
  • DPI_
  • DPPS
  • DPPV
  • DRNG
  • FACE
  • FADE
  • FORM
  • FVER
  • GRAB
  • ILBM
  • INS1
  • IMRT
  • JUNK
  • LIST
  • MHDR
  • NAME
  • PAN_
  • PROP
  • RLSE
  • SAMP
  • SEQN
  • SHDR
  • SMUS
  • SPRT
  • TEXT
  • TINY
  • TRAK
  • VHDR