ILBM

ILBM (アイエルビーエム、Interleaved Bitmap の略)は、Interchange File Format (IFF) を使って画像データを格納するファイルフォーマット。画像データは可変個のビットプレーンとして格納される。ビットプレーンとは、画像内の各ピクセルの特定のビットだけを集めたものである。水平方向と垂直方向の連長圧縮をサポートしている。

このフォーマットは、Amiga のチップセットの機能と密接に関連しており、そのチップセットには3つの世代がある。

Amigaとの関係

OCS (Original Chip Set) と ECS (Enhanced Chip Set) では、最大6枚のビットプレーンをサポートしており、普通に考えれば64色表示が可能である。しかし、パレットレジスタは32個しかない。5枚のビットプレーンはパレットレジスタ番号にそのまま対応している。6枚のビットプレーンの用途は2つある。1つはピクセルの輝度(明るい/暗い)を指定して64色を表示するモードである。もう1つは HAM (Hold And Modify) モードと呼ばれ、パレットでは16色しか使わず、制限付きながら4096色を表示するモードである。

AGA (Advanced Graphics Architecture) チップセットでは、8個のビットプレーンを使え、256色のパレットレジスタがある。このため、64色、128色、256色のモードがある。さらに HAM8 モードで64色のパレットを使って、最大 262,144 色を表示する。

ILBM は IFF に基づいているため、ファイルはチャンク (chunk) で構成される。各チャンクには4バイトのタイプ識別子、4バイトのチャンク長があり、その後の構造はチャンクのタイプによって異なる。このような構造により、フォーマットを容易に拡張できる。プログラムは未知のチャンクをスキップすればよいからである(長さは判っている)。

チャンク

以下のチャンクがILBM用に定義されている。

  • BMHD (BitMapHeaDer)
  • CMAP (ColorMAP) - カラーパレット用標準IFFチャンク
  • GRAB (GRAB position)
  • CAMG (Commodore AMiGa computer)
  • BODY - ビットプレーンとマスク。

もちろん、ILBMファイルにも標準IFFチャンクを含めることができ、作者、バージョン、コピーライトなどを記述できる。Deluxe Paint で作成したファイルには次のチャンクもある。

  • DPAN (Dpaint) - Deluxe Paint の設定を格納

ILBM から派生したフォーマットとして、アニメーションをサポートした ANIM がある。ANIM ではさらに以下のチャンクが定義されている。

  • ANHD (ANimation HeaDer)
  • DLTA (DeLTA) - フレーム間の差分を格納。圧縮方法もいくつかサポートしている。
マルチメディア圧縮フォーマット
動画ファイルフォーマット
ISO/IEC
ITU-T
SMPTE
AOMedia
IETF
SAC
  • AVS(英語版)
その他
  • Apple Video(英語版)
  • Bink(英語版)
  • DVI(英語版)
  • EVC(英語版)
  • GIFアニメーション
  • Microsoft Video 1(英語版)
  • MSU Lossless(英語版)
  • OMS Video(英語版)
  • ProRes 422
  • ProRes 4444
  • RTVideo(英語版)
  • SheerVideo(英語版)
  • Smacker(英語版)
  • Snow
  • Sorenson Video, Spark(英語版)
  • VP6
  • VP9
  • WMV
  • YULS(英語版)
  • XVC
  • Xvid
可逆圧縮
開発停止
音声ファイルフォーマット
ISO/IEC
ITU-T
IETF
3GPP
ETSI
  • AC-3
  • AC-4(英語版)
  • DTS
SAC
  • AVS(英語版)
  • DRA(英語版)
その他
開発停止
Bluetooth
画像ファイルフォーマット
IEC, ISO,
ITU-T, W3C, IETF
その他
マルチメディアコンテナフォーマット
ISO/IEC
ITU-T
IETF
SMPTE
  • GXF(英語版)
  • MXF
3GPP
  • 3GP and 3G2(英語版)
その他
団体
  • NETVC(英語版)
  • MPEG LA(英語版)
圧縮技術についてはデータ圧縮を、コーデックについてはデータ圧縮・伸張を行うコーデックを参照