enumeração DXVA2_VideoChromaSubSampling (dxva2api.h)
Descreve como os valores de chroma são posicionados em relação aos exemplos de luma em um quadro de vídeo YUV. Esses sinalizadores são usados na estrutura DXVA2_ExtendedFormat .
Syntax
typedef enum _DXVA2_VideoChromaSubSampling {
DXVA2_VideoChromaSubsamplingMask = 0xf,
DXVA2_VideoChromaSubsampling_Unknown = 0,
DXVA2_VideoChromaSubsampling_ProgressiveChroma = 0x8,
DXVA2_VideoChromaSubsampling_Horizontally_Cosited = 0x4,
DXVA2_VideoChromaSubsampling_Vertically_Cosited = 0x2,
DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes = 0x1,
DXVA2_VideoChromaSubsampling_MPEG2,
DXVA2_VideoChromaSubsampling_MPEG1,
DXVA2_VideoChromaSubsampling_DV_PAL,
DXVA2_VideoChromaSubsampling_Cosited
} DXVA2_VideoChromaSubSampling;
Constantes
DXVA2_VideoChromaSubsamplingMask Valor: 0xf Bitmask para validar valores de sinalizador. Esse valor não é um sinalizador válido. |
DXVA2_VideoChromaSubsampling_Unknown Valor: 0 Esquema de codificação desconhecido. |
DXVA2_VideoChromaSubsampling_ProgressiveChroma Valor: 0x8 Chroma deve ser reconstruído como se o vídeo subjacente fosse conteúdo progressivo, em vez de ignorar campos ou aplicar a filtragem de croma para minimizar artefatos da reconstrução do croma entrelaçado 4:2:0. |
DXVA2_VideoChromaSubsampling_Horizontally_Cosited Valor: 0x4 Copiado horizontalmente. Os exemplos de chroma são alinhados horizontalmente com múltiplos dos exemplos de luma. Se esse sinalizador não estiver definido, os exemplos de chroma estarão localizados 1/2 pixel à direita dos exemplos de luma correspondentes. |
DXVA2_VideoChromaSubsampling_Vertically_Cosited Valor: 0x2 Copiado verticalmente. Os exemplos de chroma são alinhados verticalmente com múltiplos dos exemplos de luma. Se esse sinalizador não estiver definido, os exemplos de chroma estarão localizados 1/2 pixel abaixo dos exemplos de luma correspondentes. |
DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes Valor: 0x1 Os planos chroma são alinhados verticalmente. Se esse sinalizador não estiver definido, os planos chroma estarão fora de fase por amostra de chroma 1/2 e os exemplos cb e cr serão colocados em linhas alternativas. |
DXVA2_VideoChromaSubsampling_MPEG2 Especifica o esquema de codificação chroma para vídeo MPEG-2. Os exemplos de chroma são alinhados horizontalmente com os exemplos de luma, mas não são alinhados verticalmente. Os planos você e V são alinhados verticalmente. |
DXVA2_VideoChromaSubsampling_MPEG1 Especifica o esquema de codificação chroma para vídeo MPEG-1. |
DXVA2_VideoChromaSubsampling_DV_PAL Especifica o esquema de codificação chroma para vídeo DV pal. |
DXVA2_VideoChromaSubsampling_Cosited Horizontal e verticalmente cosited. Os exemplos de chroma são alinhados vertical e horizontalmente com os exemplos de luma. Formatos YUV como 4:4:4, 4:2:2 e 4:1:1 são sempre copiados em ambas as direções e devem usar esse sinalizador. |
Comentários
Os diagramas a seguir mostram os arranjos mais comuns.
4:4:4 horizontal e verticalmente copiado.
4:2:2 horizontal e verticalmente cosited.
4:1:1 horizontal e verticalmente cosited.
4:2:0 progressiva, horizontalmente cossiada.
Exemplo: MPEG-2 progressivo.4:2:0 progressiva, não cosited horizontal ou verticalmente.
Exemplo: JPEG progressivo.4:2:0 entrelaçado, cosited verticalmente; planos chroma fora de fase.
Exemplo: DV PAL entrelaçado.4:2:0 entrelaçado, horizontalmente cosited.
Exemplo: MPEG-2 entrelaçado.Essa enumeração é equivalente à enumeração DXVA_VideoChromaSubsampling usada no DXVA 1.0.
Se você estiver usando a interface IMFMediaType para descrever o formato de vídeo, chroma siting será especificado no atributo MF_MT_VIDEO_CHROMA_SITING .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Cabeçalho | dxva2api.h |