非圧縮 RGB ビデオ サブタイプ
以下のサブタイプは、非圧縮 RGB フォーマットを定義する。
GUID | 説明 |
MEDIASUBTYPE_RGB1 | RGB、1 ピクセルにつき 1 ビット (1 bpp)。パレット化されている。 |
MEDIASUBTYPE_RGB4 | RGB、4 bpp。パレット化されている。 |
MEDIASUBTYPE_RGB8 | RGB、8 bpp。 |
MEDIASUBTYPE_RGB555 | RGB 555、16 bpp。 |
MEDIASUBTYPE_RGB565 | RGB 565、16 bpp。 |
MEDIASUBTYPE_RGB24 | RGB、24 bpp。 |
MEDIASUBTYPE_RGB32 | RGB、32 bpp。アルファ チャンネルなし。 |
MEDIASUBTYPE_ARGB32 | RGB、32 bpp。アルファ チャンネルあり。 |
パレット化フォーマットの場合、各ピクセルの色はパレットのインデックスとして指定される。パレットは BITMAPINFOHEADER 構造体に続いて、フォーマット ブロックに含まれている必要がある。非パレット化フォーマットの場合、各ピクセルの色は直接指定される。メモリ レイアウトは、ビット深度に依存する。
- RGB 555 は、以下のメモリ レイアウトを使う。
High-order byte: Low-order byte:
X R R R R R G G G G G B B B B B
X = Don't care, R = Red, G = Green, B = Blue
- RGB 565 は、以下のメモリ レイアウトを使う。
High-order byte: Low-order byte:
R R R R R G G G G G G B B B B B
24 ビット RGB の場合、すべてのピクセルは RGBTRIPLE である。各色は 1 バイトで、その値は 0 ~ 255 である。メモリ レイアウトは以下のとおり。
バイト 0 1 2 値 青 緑 赤 32 ビット RGB の場合、すべてのピクセルは RGBQUAD である。各色は 1 バイトで、その値は 0 ~ 255 である。メモリ レイアウトは以下のとおり。
バイト 0 1 2 3 値 青 緑 赤 アルファ、または無視
サブタイプが MEDIASUBTYPE_ARGB32 の場合、バイト 3 にはアルファ チャンネルの値が含まれる。サブタイプが MEDIASUBTYPE_RGB32 の場合、バイト 3 は無視すること。
参照