Поделиться через


Подтипы видео YUV

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]

Форматы YUV классифицируются в соответствии со следующими сведениями:

Упакованные форматы и плоски. В упакованном формате компоненты Y, U и V хранятся в одном массиве. Пиксели организованы в группы макропикселей, макет которых зависит от формата. В плоскостном формате компоненты Y, U и V хранятся отдельно в виде трех плоскостей.

Выборка хрома. Нотация, называемая нотацией A:B:C, используется для описания частоты выборки для вас и V относительно Y:

  • 4:4:4 означает отсутствие понижения по каналам хрома.
  • 4:2:2 означает горизонтальное понижение 2:1 без вертикальной выборки вниз. Каждая строка сканирования содержит четыре образца Y для каждых двух выборок U или V.
  • 4:2:0 означает горизонтальное понижение 2:1 с вертикальным понижением 2:1.
  • 4:1:1 означает горизонтальное понижение 4:1 без вертикального понижения. Каждая строка сканирования содержит четыре примера Y для каждого примера U или V. Выборка 4:1:1 является менее распространенной по сравнению с другими форматами и не рассматривается подробно в этой статье.

Число битов на канал. Наиболее распространенные размеры выборки — 8, 10 или 16 бит на выборку. Некоторые форматы YUV палеттизированы.

Макет памяти. В противном случае два типа формата YUV могут быть идентичными, но используют разные упорядочения для примеров Y, V и U в памяти.

Рекомендуемые форматы YUV

GUID Формат Дискретизация Упакованные или плоски Число битов на канал
MEDIASUBTYPE_AYUV AYUV 4:4:4 Упакованные 8
MEDIASUBTYPE_YUY2 YUY2 4:2:2 Упакованные 8
MEDIASUBTYPE_UYVY UYVY 4:2:2 Упакованные 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

 

Описание этих форматов YUV для отрисовки видео в Windows см. в разделе Рекомендуемые 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 См. примечания. Упакованные 8
MEDIASUBTYPE_Y411 Y411 4:1:1 Упакованные 8
MEDIASUBTYPE_Y41P Y41P 4:1:1 Упакованные 8
MEDIASUBTYPE_YVU9 YVU9 См. примечания. Плоские 8
MEDIASUBTYPE_YVYU YVYU 4:2:2 Упакованные 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 — это плоской формат, в котором вы и V выполняете выборку каждые 4 пикселя по горизонтали и по вертикали (иногда это называется 16:1:1). Плоскость V отображается перед плоскостью U.

  • Формат Indeo YVU9 (MEDIASUBTYPE_IF09) — это разновидность YVU9 с дополнительными сведениями о разностных кадрах после плоскости U. Кодек Indeo больше не поддерживается в Windows.

  • YVYU похож на UYVY с другим порядком байтов: Y0 V0 Y1 U0

  • Кодек Indeo больше не поддерживается в Windows.

Требования

Требование Значение
Заголовок
Dshow.h

См. также раздел

Рекомендуемые 8-разрядные форматы YUV для отрисовки видео

Подтипы видео

Работа с видеокадрами