Формат файла обмена

редактировать
Формат файла обмена
РазработаноElectronic Arts, Commodore
Первоначальный выпуск1985; 35 лет назад (1985 г.)
Тип форматаФормат цифрового контейнера

Формат файла обмена (IFF ), изначально является общим форматом файла-контейнера введена компанией Electronic Arts в 1985 году (в сотрудничестве с Commodore ) для облегчения передачи данных между программным обеспечением, созданным разными компаниями.

Файлы IFF не имеют стандартного расширения. Во многих системах, которые генерируют файлы IFF, расширения файлов не важны (ОС хранит метаданные формата файла отдельно от имени файла). Расширение .iffобычно используется для файлов формата ILBM, которые используют формат контейнера IFF.

Формат файла обмена ресурсами - это формат, разработанный Microsoft и IBM в 1991 году, который основан на IFF, за исключением того, что порядок байтов был изменено на little-endian, чтобы соответствовать архитектуре процессора x86. Apple AIFF - это формат аудиофайлов с прямым порядком байтов, разработанный на основе IFF. Формат файла изображения TIFF не имеет отношения.

Содержание
  • 1 Структура
  • 2 См. Также
  • 3 Примечания
  • 4 Ссылки
  • 5 Внешние ссылки
Структура

Файл IFF создается из куски. Каждый фрагмент начинается с того, что в спецификации называется «ID типа» (то, что Macintosh называет OSType, а разработчики Windows могут называть FourCC ). За ним следует 32-битное знаковое целое число (все целые числа в файловой структуре IFF - big-endian ), определяющее размер следующих данных (содержимое блока) в байтах. Поскольку спецификация включает явную длину для каждого фрагмента, синтаксический анализатор может пропускать фрагменты, которые он либо не может, либо не хочет обрабатывать.

Эта структура тесно связана с представлением тип-длина-значение (TLV).

Существуют предопределенные групповые блоки с идентификаторами типа FORM, LISTи CAT. Блок FORMпохож на структуру записи, содержащую идентификатор типа (указывающий тип записи), за которым следуют вложенные блоки, определяющие поля записи. LIST- это структура факторинга, содержащая серию блоков PROP(свойство) плюс блоки вложенных групп, к которым применяются эти свойства. CAT- это просто набор вложенных фрагментов без специальной семантики. Групповые фрагменты могут содержать другие групповые фрагменты, в зависимости от потребностей приложения. Чанки группы, как и их более простые аналоги, содержат элемент длины. Таким образом, пропуск группы можно выполнить с помощью простой относительной операции поиска.

. Фрагменты должны начинаться с четных смещений файлов, как и положено исходным параметрам IFF на процессоре Motorola 68000, который не мог количество адресов больше байта на нечетных адресах. Таким образом, фрагменты с нечетной длиной будут «дополнены» до четной границы байта путем добавления так называемого «дополнительного байта» после их обычного конца.

Структура верхнего уровня файла IFF состоит ровно из одного из блоков группы: FORM, LISTили CAT, где FORM- безусловно, самый распространенный.

Каждый тип блока обычно имеет различную внутреннюю структуру, которая может представлять собой числовые данные, текст или необработанные данные. Также можно включать другие файлы IFF, как если бы они были фрагментами (обратите внимание, что они имеют одинаковую структуру: четыре буквы, за которыми следует длина), и в некоторых форматах это используется. Существуют стандартные фрагменты, которые могут присутствовать в любом файле IFF, например AUTH(содержащий текст с информацией об авторе файла), ANNO(содержащий текст с аннотацией, обычно имя программа, создавшая файл), NAME(содержащий текст с названием работы в файле), VERS(содержащий версию файла), (c)(содержащий текст с информацией об авторских правах). Существуют также блоки, которые являются общими для ряда форматов, таких как CMAP, который содержит цветовую палитру в файлах ILBM, ANIM и DR2D (изображения, анимации и векторные картинки). Существуют блоки, которые имеют общее имя, но содержат разные данные, такие как BODY, которые могут хранить изображение в файле ILBM и звук в файле 8SVX. И, наконец, есть чанки, уникальные для своего типа файла. Некоторые программы, которые создают файлы IFF, добавляют к ним блоки со своими внутренними данными; эти же файлы позже могут быть прочитаны другими программами без каких-либо сбоев (поскольку их анализаторы могут пропускать неинтересные фрагменты), что является большим преимуществом IFF и аналогичных форматов.

См. Также
  • RIFF (little-endian несовместимая производная от IFF, первоначально от Microsoft)
  • AIFF (big-endian совместимая производная от IFF, первоначально от Apple)
  • Представление типа-длины-значения (TLV).
  • IFF-ILBM (очень популярный формат файлов изображений на основе IFF)
  • PNG (современный формат графических файлов со структурой фрагментов, вдохновленный IFF)
  • FourCC (подход к идентификации фрагментов, используемый многими форматами TLV, включая IFF, как подробный Magic number )
Примечания
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-24 04:09:13
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте