YUV ビデオ サブタイプ
YUV フォーマットは、パックされたフォーマットと平面フォーマットに分けられる。パックされたフォーマットでは、Y、U、V 成分は、単一の配列に格納される。ピクセルは、マクロピクセルのグループにまとめられる。このレイアウトはフォーマットに依存する。平面フォーマットでは、Y、U、V 成分は、3 つの平面として個別に格納される。
パックされた YUV フォーマット
以下のサブタイプ GUID がパックされた YUV フォーマットを識別する。
GUID | 説明 |
MEDIASUBTYPE_AYUV | 4:4:4 YUV フォーマット |
MEDIASUBTYPE_UYVY | UYVY (4:2:2 にパック) |
MEDIASUBTYPE_Y411 | Y41P と同じ |
MEDIASUBTYPE_Y41P | Y41P (4:1:1 にパック) |
MEDIASUBTYPE_Y211 | Y211 |
MEDIASUBTYPE_YUY2 | YUY2 (4:2:2 にパック) |
MEDIASUBTYPE_YVYU | YVYU (4:2:2 にパック) |
MEDIASUBTYPE_YUYV | YUY2 と同じ (Canopus が使用、FOURCC 'YUYV') |
AYUV は 4:4:4 YUV フォーマットで、バイト順序は以下のとおりである。
A0 Y0 U0 V0
A0 にはアルファ値が格納される。
UYVY フォーマットは、2:1 水平ダウンサンプリングを使い、垂直ダウンサンプリングは使わない。Y はすべてのピクセルでサンプルされる。U および V は、2 ピクセルごとに水平にサンプルされる。各マクロピクセルは 4 バイトで、2 ピクセルを含んでいる。以下のバイト順序を使う。
U0 Y0 V0 Y1
Y41P フォーマットは、4:1 水平ダウンサンプリングを使い、垂直ダウンサンプリングは使わない。Y はすべてのピクセルでサンプルされる。U および V は、4 ピクセルごとに水平にサンプルされる。各マクロピクセルは 12 バイトで、8 ピクセルを含んでいる。以下のバイト順序を使う。
U0 Y0 V0 Y1 U4 Y2 V4 Y3 Y4 Y5 Y6 Y8
YUY2 は UYVY と似ているが、バイト順序が異なる。
Y0 U0 Y1 V0
YVYU も UYVY と似ているが、バイト順序が異なる。
Y0 V0 Y1 U0
Y211 フォーマットでは、Y は 2 ピクセルごとに水平にサンプリングされ、U および V は 4 ピクセルごとに水平にサンプリングされる。各マクロピクセルは 4 バイトで、4 ピクセルを含んでいる。以下のバイト順序を使う。
Y0 U0 Y2 V0
平面 YUV フォーマット
以下のサブタイプ GUID が水平 YUV フォーマットを識別する。
GUID | 説明 |
MEDIASUBTYPE_IF09 | Indeo YVU9 |
MEDIASUBTYPE_IYUV | IYUV |
MEDIASUBTYPE_YV12 | YV12 |
MEDIASUBTYPE_YVU9 | YVU9 |
YVU9 フォーマットは、8 bpp Y 平面、それに続く 8 bpp 4×4 U および V 平面で構成される。
サンプリング頻度 水平 垂直 Y 1 1 U 4 4 V 4 4 Indeo YVU9 フォーマット (MEDIASUBTYPE_IF09) は、YVU9 のバリエーションで、U 平面の後に追加のデルタ フレーム情報が付く。
IYUV フォーマットは、8 bpp Y 平面、それに続く 8 bpp 2×2 U および V 平面で構成される。
サンプリング頻度 水平 垂直 Y 1 1 U 2 2 V 2 2 YV12 フォーマットは IYUV と同一であるが、U および V 平面が入れ替わっており、V 平面が U 平面の前にくる。
参照