enumeração DXVA_VideoProcessCaps (dxva.h)
A enumeração DXVA_VideoProcessCaps identifica operações que podem ser executadas simultaneamente com o desinterlace solicitado.
Sintaxe
typedef enum _DXVA_VideoProcessCaps {
DXVA_VideoProcess_None,
DXVA_VideoProcess_YUV2RGB,
DXVA_VideoProcess_StretchX,
DXVA_VideoProcess_StretchY,
DXVA_VideoProcess_AlphaBlend,
DXVA_VideoProcess_SubRects,
DXVA_VideoProcess_SubStreams,
DXVA_VideoProcess_SubStreamsExtended,
DXVA_VideoProcess_YUV2RGBExtended,
DXVA_VideoProcess_AlphaBlendExtended
} DXVA_VideoProcessCaps;
Constantes
DXVA_VideoProcess_None Indica que o hardware de desinterlace só pode executar operações básicas de desinterlace. Ou seja, operações de desinterlace que não são combinadas com outras operações, conversão de cores semelhantes, mistura alfa, alongamento, subseção ou substream. |
DXVA_VideoProcess_YUV2RGB Indica que o hardware de desinterlace pode converter o vídeo do espaço de cor YUV para o espaço de cores RGB. O formato RGB terá pelo menos 8 bits de precisão para cada componente de cor. Se possível, uma cópia de buffer dentro da VMR pode ser evitada. Todos os drivers devem ser capazes de dar suporte a essa operação para o modo de desinterlace bob. Não usado com a função de DeinterlaceBltEx. |
DXVA_VideoProcess_StretchX Indica que a correção da taxa de proporção pode ser executada simultaneamente à medida que o vídeo está sendo desinterlaceado se o deinterlacer for capaz de alongar ou reduzir horizontalmente. O enumerador deve ter suporte para o modo de desinterlace bob. Deve ser usado com a função DeinterlaceBltEx. |
DXVA_VideoProcess_StretchY Indica que o ajuste de taxa de proporção é combinado com uma operação geral de redimensionamento de imagem para dimensionar a imagem de vídeo. Deve ser usado com a função DeinterlaceBltEx. |
DXVA_VideoProcess_AlphaBlend Indica que a VMR não executará uma cópia de buffer quando um valor alfa for alterado. É raro que os aplicativos alterem o valor alfa constante associado ao fluxo de vídeo, portanto, esse é um recurso de baixa prioridade. O enumerador deve ter suporte para o modo de desinterlace bob. Não usado com a função de DeinterlaceBltEx. |
DXVA_VideoProcess_SubRects Indica que o hardware de desinterlace pode desinterlacear apenas uma região de subrectangle da imagem de vídeo para a posição de destino especificada. Isso será útil se a imagem de vídeo precisar ser cortada antes de ser processada ainda mais à medida que o tamanho do quadro de saída for reduzido. |
DXVA_VideoProcess_SubStreams Windows Server 2003 SP1 e versões posteriores e windows XP SP2 e versões posteriores. Indica que o hardware de desinterlace pode combinar substreams de vídeo com o fluxo de vídeo. Deve ser usado com a função DeinterlaceBltEx. |
DXVA_VideoProcess_SubStreamsExtended Windows Server 2003 SP1 e versões posteriores e windows XP SP2 e versões posteriores. Indica que os ajustes de cor necessários podem ser feitos nos fluxos de vídeo de origem e substreams. Esses ajustes são indicados nos dados de cores estendidas, pois o vídeo é desinterlaceado, composto com os substreams e gravado na superfície de destino. Deve ser usado com a função DeinterlaceBltEx. |
DXVA_VideoProcess_YUV2RGBExtended Windows Server 2003 SP1 e versões posteriores e windows XP SP2 e versões posteriores. Indica que uma operação de conversão de espaço de cor pode ser executada à medida que os pixels desinterlaceados e compostos são gravados na superfície de destino usando as informações de cor estendidas especificadas para as superfícies de origem e destino. Deve ser usado com a função DeinterlaceBltEx. |
DXVA_VideoProcess_AlphaBlendExtended Windows Server 2003 SP1 e versões posteriores e windows XP SP2 e versões posteriores. Indica que uma operação de mistura alfa pode ser executada com a superfície de destino quando os pixels desinterlaceados e compostos são gravados na superfície de destino. O driver deve lidar com a cor da tela de fundo com base no valor alfa do membro Alfa da estrutura DXVA_DeinterlaceBltEx. Quando o valor alfa é 1,0f, a cor da tela de fundo é desenhada opaca (sem transparência). Quando o valor alfa é 0,0f, a tela de fundo não deve ser desenhada (transparente). Deve ser usado com a função DeinterlaceBltEx. |
Observações
Ocasionalmente, o ajuste de taxa de proporção executado por DXVA_VideoProcess_AlphaBlend é combinado com uma operação geral de redimensionamento de imagem para dimensionar a imagem de vídeo dentro de um espaço de composição definido pelo aplicativo, o que é raro e não é um recurso essencial. É melhor se o dimensionamento necessário para redimensionar o vídeo para caber na janela do aplicativo pode ser feito simultaneamente ao dimensionamento necessário para desinterlacing, o que evita artefatos cumulativos.
A conversão de espaço de cor executada por DXVA_VideoProcess_YUV2RGB será particularmente útil dentro da VMR se for combinada com qualquer (e, idealmente, todos) dos seguintes enumeradores: DXVA_VideoProcess_StretchX, DXVA_VideoProcess_StretchYe DXVA_VideoProcess_AlphaBlend. Não há nenhum requisito para converter do espaço de cor RGB para o espaço de cor YUV.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | dxva.h (inclua Dxva.h) |