Compartilhar via


Efeito YCbCr

Converte os dados jpeg YCbCr planar e chroma subsampled em RGB. Esse efeito pressupõe que os dados YCbCr sejam formatados em conformidade com o padrão JPEG. Os dados das entradas podem ser obtidos de IWICPlanarBitmapSourceTransform. O efeito YCbCr requer duas entradas; o primeiro deve ser um bitmap DXGI_FORMAT_R8 que contém dados luma e o segundo deve ser um bitmap DXGI_FORMAT_R8G8 contendo dados de chroma subampled. Para obter mais informações sobre como usar esse efeito, consulte Suporte a JPEG YCbCr.

O CLSID para esse efeito é CLSID_D2D1YCbCr.

Propriedades de efeito

Nome de exibição e enumeração de índice Descrição
ChromaSubsampling
D2D1_YCBCR_CHROMA_SUBSAMPLING
Especifica a subampling chroma da imagem chroma de entrada.
O tipo é D2D1_YCBCR_CHROMA_SUBSAMPLING.
O valor padrão é D2D1_YCBCR_CHROMA_SUBSAMPLING_AUTO.
TransformMatrix
D2D1_YCBCR_PROP_TRANSFORM_MATRIX
Uma Matriz 3x2 especificando a transformação de afinação alinhada ao eixo da imagem. As transformações alinhadas ao eixo incluem escala, inversões e rotações de 90 graus.
O tipo é D2D1_MATRIX_3X2_F.
O valor padrão é Matrix3x2F::Identity().
Interpolationmode
D2D1_YCBCR_INTERPOLATION_MODE
O modo de interpolação.
O tipo é D2D1_YCBCR_INTERPOLATION_MODE.

Modos de subampasagem

Enumeração Descrição
D2D1_YCBCR_CHROMA_SUBSAMPLING_AUTO
Esse modo tenta inferir a subampa do chroma dos limites das imagens de entrada. Quando essa opção é selecionada, o plano menor é superior ao tamanho do plano maior e o retângulo de saída desse efeito é a interseção dos dois planos. Ao usar esse modo, deve-se tomar cuidado ao aplicar efeitos aos planos de entrada que alteram os limites da imagem, como a transformação de borda, para que a taxa de tamanho desejada entre os planos seja mantida.
D2D1_YCBCR_CHROMA_SUBSAMPLING_420
O plano chroma é subemplizado horizontalmente por e subemplizado verticalmente por . Quando essa opção é selecionada, o plano chroma é horizontal e verticalmente upsampled por 2x e esse retângulo de saída desse efeito é a interseção dos dois planos.
D2D1_YCBCR_CHROMA_SUBSAMPLING_422
O plano chroma é subemplizado horizontalmente por . Quando essa opção é selecionada, o plano chroma é horizontalmente aumentado em 2x e o retângulo de saída desse efeito é a interseção dos dois planos.
D2D1_YCBCR_CHROMA_SUBSAMPLING_444
O plano chroma não é subampledo. Quando essa opção é selecionada, o retângulo de saída desse efeito é a interseção dos dois planos.
D2D1_YCBCR_CHROMA_SUBSAMPLING_440
O plano chroma é subemplizado verticalmente por . Quando essa opção é selecionada, o plano chroma é verticalmente upsampled por 2x e esse retângulo de saída desse efeito é a interseção dos dois planos.

Modos de interpolação

Enumeração Descrição
D2D1_YCBCR_INTERPOLATION_MODE_NEAREST_NEIGHBOR Amostra o ponto único mais próximo e usa isso. Esse modo usa menos tempo de processamento, mas gera a imagem de menor qualidade.
D2D1_YCBCR_INTERPOLATION_MODE_LINEAR Usa um exemplo de quatro pontos e interpolação linear. Esse modo usa mais tempo de processamento do que o modo vizinho mais próximo, mas gera uma imagem de maior qualidade.
D2D1_YCBCR_INTERPOLATION_MODE_CUBIC Usa um kernel cúbico de 16 exemplos para interpolação. Esse modo usa a maior parte do tempo de processamento, mas gera uma imagem de maior qualidade.
D2D1_YCBCR_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR Usa quatro exemplos lineares em um único pixel para um bom anti-aliasing de borda. Esse modo é bom para reduzir verticalmente em pequenas quantidades em imagens com poucos pixels.
D2D1_YCBCR_INTERPOLATION_MODE_ANISOTROPIC Usa a filtragem anisotrópica para amostrar um padrão de acordo com a forma transformada do bitmap.
D2D1_YCBCR_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC Usa um kernel cúbico de alta qualidade de tamanho variável para executar um dimensionamento pré-down da imagem se o downscaling estiver envolvido na matriz de transformação. Em seguida, usa o modo de interpolação cúbica para a saída final.

Bitmap de saída

O tamanho do bitmap de saída depende da matriz de transformação aplicada à imagem.

O efeito executa a operação de transformação e, em seguida, aplica uma caixa delimitadora em torno do resultado. O bitmap de saída é o tamanho da caixa delimitadora.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8.1 [aplicativos da área de trabalho | Aplicativos da Windows Store]
Servidor mínimo com suporte Windows Server 2012 R2 [aplicativos da área de trabalho | Aplicativos da Windows Store]
Cabeçalho d2d1effects_1.h
Biblioteca d2d1.lib, dxguid.lib

ID2D1Effect

Suporte a JPEG YCbCr

IWICPlanarBitmapSourceTransform