Partilhar via


Subtipos de vídeo YUV

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Os formatos YUV são categorizados de acordo com as seguintes informações:

Formatos empacotados versus formatos planares. Em um formato empacotado, os componentes Y, U e V são armazenados em uma única matriz. Os pixels são organizados em grupos de macropixels, cujo layout depende do formato. Em um formato planar, os componentes Y, U e V são armazenados separadamente, como três planos.

Amostragem de chroma. Uma notação chamada notação A:B:C é usada para descrever a frequência com que você e V são amostrados em relação a Y:

  • 4:4:4 significa nenhum downsampling dos canais chroma.
  • 4:2:2 significa 2:1 downsampling horizontal, sem nenhum downsampling vertical. Cada linha de verificação contém quatro exemplos Y para cada dois exemplos de U ou V.
  • 4:2:0 significa 2:1 downsampling horizontal, com 2:1 downsampling vertical.
  • 4:1:1 significa 4:1 downsampling horizontal, sem nenhum downsampling vertical. Cada linha de verificação contém quatro exemplos Y para cada exemplo de U ou V. A amostragem 4:1:1 é menos comum do que outros formatos e não é discutida em detalhes neste artigo.

Bits por canal. Os tamanhos de exemplo mais comuns são 8, 10 ou 16 bits por exemplo. Alguns formatos YUV são palettizados.

Layout de memória. Dois tipos de formato YUV podem ser idênticos, mas usam ordenações diferentes para os exemplos de Y, V e U na memória.

Formatos YUV recomendados

GUID Formatar amostragem Empacotado ou planar Bits por canal
MEDIASUBTYPE_AYUV AYUV 4:4:4 Embalado 8
MEDIASUBTYPE_YUY2 YUY2 4:2:2 Embalado 8
MEDIASUBTYPE_UYVY UYVY 4:2:2 Embalado 8
MEDIASUBTYPE_IMC1 IMC1 4:2:0 Planar 8
MEDIASUBTYPE_IMC3 IMC2 4:2:0 Planar 8
MEDIASUBTYPE_IMC2 IMC3 4:2:0 Planar 8
MEDIASUBTYPE_IMC4 IMC4 4:2:0 Planar 8
MEDIASUBTYPE_YV12 YV12 4:2:0 Planar 8
MEDIASUBTYPE_NV12 NV12 4:2:0 Planar 8

 

Para obter uma descrição dos formatos YUV para renderização de vídeo no Windows, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo .

Outros tipos de formato YUV

GUID Formatar amostragem Empacotado ou planar Bits por canal
MEDIASUBTYPE_I420 I420 4:2:0 Planar 8
MEDIASUBTYPE_IF09 Não tem mais suporte.
Indeo YVU9
Não tem mais suporte.
Consulte Observações.
Não tem mais suporte.
Planar
Não tem mais suporte.
8
MEDIASUBTYPE_IYUV IYUV 4:2:0 Planar 8
MEDIASUBTYPE_Y211 Y211 Consulte Observações. Embalado 8
MEDIASUBTYPE_Y411 Y411 4:1:1 Embalado 8
MEDIASUBTYPE_Y41P Y41P 4:1:1 Embalado 8
MEDIASUBTYPE_YVU9 YVU9 Consulte Observações. Planar 8
MEDIASUBTYPE_YVYU YVYU 4:2:2 Embalado 8

 

  • I420 consiste em um avião Y, seguido por um avião U, seguido por um avião V.

  • O IYUV é idêntico ao I420.

  • Y211 é um formato empacotado, no qual Y é amostrado a cada 2 pixels horizontalmente, e você e V são amostrados a cada 4 pixels horizontalmente. Cada macropixel tem 4 bytes e contém 4 pixels. Ele usa a seguinte ordem de bytes:

    Y0 U0 Y2 V0    Y4 U4 Y6 V4    Y8 U8 Y10 V8

  • Y41P é um formato 4:1:1 empacotado. Ele usa a seguinte ordem de bytes:

    U0 Y0 V0 Y1    U4 Y2 V4 Y3    Y4 Y5 Y6 Y7

  • YVU9 é um formato planar, no qual você e V são amostrados a cada 4 pixels horizontal e verticalmente (às vezes chamado de 16:1:1). O plano V aparece antes do avião U.

  • O formato Indeo YVU9 (MEDIASUBTYPE_IF09) é uma variação de YVU9 com informações adicionais de quadro delta após o plano U. O codec Indeo não tem mais suporte no Windows.

  • YVYU é semelhante a UYVY com uma ordem de byte diferente: Y0 V0 Y1 U0

  • O codec Indeo não tem mais suporte no Windows.

Requisitos

Requisito Valor
parâmetro
Dshow.h

Confira também

Formatos YUV recomendados de 8 bits para renderização de vídeo

Subtipos de vídeo

Trabalhando com quadros de vídeo