YUV 视频子类型

[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayerIMFMediaEngine媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

根据以下信息对 YUV 格式进行分类:

打包格式与平面格式。 在打包格式中,Y、U 和 V 组件存储在单个数组中。 像素被组织成一组宏像素,其布局取决于格式。 在平面格式中,Y、U 和 V 组件作为三个平面单独存储。

色度采样。 称为 A:B:C 表示法的表示法用于描述相对于 Y 对你和 V 的采样频率:

  • 4:4:4 表示没有色度通道的向下采样。
  • 4:2:2 表示 2:1 水平向下采样,没有垂直向下采样。 对于每两个 U 或 V 样本,每个扫描行包含四个 Y 样本。
  • 4:2:0 表示 2:1 水平向下采样,垂直向下采样为 2:1。
  • 4:1:1 表示 4:1 水平向下采样,没有垂直向下采样。 每个扫描行包含每个 U 或 V 样本的四个 Y 样本。 4:1:1 采样比其他格式少见,本文不作详细讨论。

每个通道的位数。 最常见的样本大小是每个样本 8 位、10 位或 16 位。 某些 YUV 格式已淡化。

内存布局。 两种 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 个像素水平采样一次,而你和 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 是一种平面格式,其中每 4 个像素水平和垂直采样一次, (有时称为 16:1:1) 。 V 平面显示在 U 平面之前。

  • Indeo YVU9 格式 (MEDIASUBTYPE_IF09) 是 YVU9 的变体,在 U 平面之后具有附加的增量帧信息。 Windows 中不再支持 Indeo 编解码器。

  • YVYU 类似于具有不同字节顺序的 UYVY: Y0 V0 Y1 U0

  • Windows 中不再支持 Indeo 编解码器。

要求

要求
标头
Dshow.h

另请参阅

推荐用于视频渲染的 8 位 YUV 格式

视频子类型

使用视频帧