YUV ビデオ サブタイプ
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]
YUV 形式は、次の情報に従って分類されます。
パック形式と平面形式。 パック形式では、Y、U、V の各コンポーネントが 1 つの配列に格納されます。 ピクセルはマクロピクセルのグループに編成され、レイアウトは形式によって異なります。 平面形式では、Y、U、V コンポーネントは 3 つの平面として個別に格納されます。
クロマ サンプリング。 A:B:C 表記と呼ばれる表記は、Y を基準にしてサンプリングされるユーザーと V の頻度を示すために使用されます。
- 4:4:4はクロマチャンネルのダウンサンプリングがないことを意味します。
- 4:2:2 は 2:1 水平ダウンサンプリングを意味し、垂直ダウンサンプリングは行われません。 すべてのスキャン ラインには、2 つの U または V サンプルごとに 4 つの Y サンプルが含まれています。
- 4:2:0 は 2:1 の水平ダウンサンプリングを意味し、垂直ダウンサンプリングは 2:1 です。
- 4:1:1 は 4:1 水平ダウンサンプリングを意味し、垂直ダウンサンプリングは行われません。 すべてのスキャンラインには、U または V サンプルごとに 4 つの Y サンプルが含まれています。 4:1:1 サンプリングは他の形式よりも一般的ではなく、この記事では詳しく説明しません。
チャネルあたりのビット数。 最も一般的なサンプル サイズは、サンプルあたり 8、10、または 16 ビットです。 一部の YUV 形式は淡色化されています。
メモリ レイアウト。 2 つの YUV 形式の種類は同じにすることができますが、メモリ内の Y、V、U サンプルでは異なる順序を使用します。
推奨される YUV 形式
GUID | フォーマット | サンプリング | パックまたは平面 | チャネルあたりのビット数 |
---|---|---|---|---|
MEDIASUBTYPE_AYUV | AYUV | 4:4:4 | Packed | 8 |
MEDIASUBTYPE_YUY2 | YUY2 | 4:2:2 | Packed | 8 |
MEDIASUBTYPE_UYVY | UYVY | 4:2:2 | Packed | 8 |
MEDIASUBTYPE_IMC1 | IMC1 | 4:2:0 | 平面 | 8 |
MEDIASUBTYPE_IMC3 | IMC2 | 4:2:0 | 平面 | 8 |
MEDIASUBTYPE_IMC2 | IMC3 | 4:2:0 | 平面 | 8 |
MEDIASUBTYPE_IMC4 | IMC4 | 4:2:0 | 平面 | 8 |
MEDIASUBTYPE_YV12 | YV12 | 4:2:0 | 平面 | 8 |
MEDIASUBTYPE_NV12 | NV12 | 4:2:0 | 平面 | 8 |
Windows でのビデオ レンダリング用の YUV 形式に関するページの説明については、「 ビデオ レンダリングに推奨される 8 ビット YUV 形式 」を参照してください。
その他の YUV 形式の種類
GUID | フォーマット | サンプリング | パックまたは平面 | チャネルあたりのビット数 |
---|---|---|---|---|
MEDIASUBTYPE_I420 | I420 | 4:2:0 | 平面 | 8 |
MEDIASUBTYPE_IF09 | サポート対象から除外されました。 Indeo YVU9 |
サポート対象から除外されました。 「解説」を参照してください。 |
サポート対象から除外されました。 平面 |
サポート対象から除外されました。 8 |
MEDIASUBTYPE_IYUV | IYUV | 4:2:0 | 平面 | 8 |
MEDIASUBTYPE_Y211 | Y211 | 「解説」を参照してください。 | Packed | 8 |
MEDIASUBTYPE_Y411 | Y411 | 4:1:1 | Packed | 8 |
MEDIASUBTYPE_Y41P | Y41P | 4:1:1 | Packed | 8 |
MEDIASUBTYPE_YVU9 | YVU9 | 「解説」を参照してください。 | 平面 | 8 |
MEDIASUBTYPE_YVYU | YVYU | 4:2:2 | Packed | 8 |
I420 は、Y プレーン、U プレーン、V プレーンで構成されます。
IYUV は I420 と同じです。
Y211 はパック形式で、Y は水平方向に 2 ピクセルごとにサンプリングされ、You と V は 4 ピクセルごとに水平方向にサンプリングされます。 各マクロピクセルは 4 バイトで、4 ピクセルが含まれています。 次のバイト順が使用されます。
Y0 U0 Y2 V0 Y4 U4 Y6 V4 Y8 U8 Y10 V8
Y41P は 4:1:1 パック形式です。 次のバイト順が使用されます。
U0 Y0 V0 Y1 U4 Y2 V4 Y3 Y4 Y5 Y6 Y7
YVU9 は平面形式で、ユーザーと V は 4 ピクセルごとに水平方向と垂直方向にサンプリングされます (16:1:1 とも呼ばれます)。 V プレーンは U プレーンの前に表示されます。
Indeo YVU9 形式 (MEDIASUBTYPE_IF09) は、U 平面の後に追加のデルタ フレーム情報を含む YVU9 のバリエーションです。 Indeo コーデックは、Windows ではサポートされなくなりました。
YVYU は、異なるバイト順の UYVY に似ています。
Y0 V0 Y1 U0
Indeo コーデックは、Windows ではサポートされなくなりました。
要件
要件 | 値 |
---|---|
ヘッダー |
|
関連項目