Compartilhar via


Método ID3D11VideoContext::VideoProcessorSetStreamLumaKey (d3d11.h)

Define a chave luma para um fluxo de entrada no processador de vídeo.

Sintaxe

void VideoProcessorSetStreamLumaKey(
  [in] ID3D11VideoProcessor *pVideoProcessor,
  [in] UINT                 StreamIndex,
  [in] BOOL                 Enable,
  [in] FLOAT                Lower,
  [in] FLOAT                Upper
);

Parâmetros

[in] pVideoProcessor

Um ponteiro para a interface ID3D11VideoProcessor . Para obter esse ponteiro, chame ID3D11VideoDevice::CreateVideoProcessor.

[in] StreamIndex

O índice baseado em zero do fluxo de entrada. Para obter o número máximo de fluxos, chame ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps e marcar o membro da estrutura MaxStreamStates.

[in] Enable

Especifica se o luma keying está habilitado.

[in] Lower

O limite inferior para a chave luma. O intervalo válido é [0... 1]. Se Enable for FALSE, esse parâmetro será ignorado.

[in] Upper

O limite superior para a tecla luma. O intervalo válido é [0... 1]. Se Enable for FALSE, esse parâmetro será ignorado.

Retornar valor

Nenhum

Comentários

Para usar esse recurso, o driver deve dar suporte ao keying de luma, indicado pelo sinalizador de funcionalidade D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY . Para consultar essa funcionalidade, chame ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps. Além disso, se o formato de entrada for RGB, o dispositivo deverá dar suporte à funcionalidade D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY .

Os valores inferior e superior fornecem os limites inferior e superior da chave luma, usando um intervalo nominal de [0...1]. Dado um formato com n bits por canal, esses valores são convertidos em valores luma da seguinte maneira:

val = f * ((1 << n)-1)

Qualquer pixel cujo valor de luma se enquadra nos limites superior e inferior (inclusivo) é tratado como transparente.

Por exemplo, se o formato de pixel usar luma de 8 bits, o limite superior será calculado da seguinte maneira:

BYTE Y = BYTE(max(min(1.0, Upper), 0.0) * 255.0)

Observe que o valor é fixado no intervalo [0...1] antes de multiplicar por 255.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho d3d11.h

Confira também

ID3D11VideoContext