Interchange File Format
Interchange File Format (IFF) — стандарт для файлов обмена данными, разработанный в 1985 фирмой Electronic Arts совместно с Commodore для новой платформы — Amiga — с целью упростить обмен данными между ПО различных производителей. Может содержать любые данные (звук, графику, текст и прочее).
Данный формат послужил основой для создания некоторых других форматов данных (см. ниже список форматов файлов в разделе См. также), а также сам по себе может быть известен под различными названиями (в зависимости от расширения файла — (I)LBM, AIFF, 8SVX и другие)
Структура
Основным понятием файла стандарта IFF является чанк (англ. chunk) — порция данных, являющаяся строительным материалом файла и состоящая из заголовка и данных. Заголовок состоит из 32-битного идентификатора (ckID) и логического блока (ckSize), указывающего размер данных (ckData) в чанке. Если данные имеют нечётное число байт, то последние нулевые байты в последнем слове данных игнорируются и не включаются в ckSize. В качестве примера приведём следующее описание:
typedef struct {
- ID ckID;
- LONG ckSize; /* sizeof(ckData) */
- UBYTE ckData[/* ckSize */];
- } Chunk;
Приллюстрируем чанк «CMAP», состоящий из 12 байт:
ckID «CMAP»
ckSize 12
ckData 0, 0, 0, 32
0, 0, 64, 0
0, 0, 64, 0
(12 байт)
См. также
На основе IFF создано множество форматов, которые, по сути, являются всё тем же IFF:
- 8SVX (Audio format)
- AIFF (Audio format)
- ANBM ((obsolete) animation format)
- ANIM (Animation format)
- BIFF8 (formerly used by Microsoft Excel)
- Alias/Wavefront Maya file format (both image and scene description)
- Word document (pre Word 97 format)
- DjVu (Image format for high resolution compound documents)
- DR2D
- EMOD (QuadraComposer module format)
- FNTR (Raster font)
- FNTV (Vector font)
- FTXT (Text format)
- GSCR (apocryphal (?) General music Score)
- IFRS (known as Blorb)
- IFZS (known as Quetzal)
- ILBM (Raster image format)
- LWO2 (Light wave format)
- PDEF (Deluxe Print page definition)
- PICS (Macintosh QuickDraw picture encapsulated in IFF format)
- PLBM ((obsolete) picture format)
- SHRI
- SMUS (Simple Music format, similar to MIDI format)
- USCR (Uhuru Sound music score)
- UVOX (Uhuru Sound voice)
- VDEO (Deluxe Video Construction Set video)
- YAFA (Animation Format)
Кроме того, с учётом «опыта эксплуатации» были созданы клоны:
- RIFF - это вариант формата IFF, разработанный Microsoft и IBM; Файлы RIFF отличаются от файлов IFF тем, что имеют литеры RIFF в начале и используют порядок байтов целых чисел от младшего к старшему (little-endian). Файлы WAV, например, являются файлами RIFF. Версия с порядком байт от старшего к младшему (big-endian), RIFX, так же была определена, но не нашла значительного применения.
- Формат файла TIFF разработан компанией Aldus, чтобы интегрировать графику с большим числом bitmap в PostScript. Он имеет блочную (chunk) структуру подобную IFF, однако сам по себе формат изображения не имеет отношения к формату ILBM.
- Стандарт файла MIDI использует основные концепции формата IFF, однако не является файлом этого стандарта.
- Формат файла PNG имеет ту же концепцию блоков (chunk), что и IFF, однако не копирует структуру.
Внешние ссылки
- About Interchange File Format
- “EA IFF 85”: Standard for Interchange Format Files - описание формата IFF. Автор Джерри Морримон (Jerry Morrison) из EA (14 января 1985 года)
- Standards and specs: The Interchange File Format (IFF)
Это заготовка статьи о программном обеспечении. Помогите Википедии, дополнив её. |