Поделиться через


Метод ID3D11VideoContext::VideoProcessorSetStreamLumaKey (d3d11.h)

Задает клавишу luma для входного потока в видеопроцессоре.

Синтаксис

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

Параметры

[in] pVideoProcessor

Указатель на интерфейс ID3D11VideoProcessor . Чтобы получить этот указатель, вызовите ID3D11VideoDevice::CreateVideoProcessor.

[in] StreamIndex

Отсчитываемый от нуля индекс входного потока. Чтобы получить максимальное количество потоков, вызовите ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps и проверка элемент структуры MaxStreamStates.

[in] Enable

Указывает, включено ли использование клавиш luma.

[in] Lower

Нижняя граница клавиши luma. Допустимый диапазон — [0... 1]. Если параметр Enable имеет значение FALSE, этот параметр игнорируется.

[in] Upper

Верхняя граница клавиши luma. Допустимый диапазон — [0... 1]. Если параметр Enable имеет значение FALSE, этот параметр игнорируется.

Возвращаемое значение

None

Remarks

Чтобы использовать эту функцию, драйвер должен поддерживать ключ luma, обозначенный флагом возможности D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY . Чтобы запросить эту возможность, вызовите ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps. Кроме того, если входной формат — RGB, устройство должно поддерживать возможность D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY .

Значения Lower и Upper дают нижнюю и верхнюю границы клавиши luma, используя номинальный диапазон [0...1]. При наличии формата с n битов на канал эти значения преобразуются в значения luma следующим образом:

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

Любой пиксель, значение luma которого попадает в верхнюю и нижнюю границы (включительно), считается прозрачным.

Например, если в пиксельном формате используется 8-битовая luma, верхняя граница вычисляется следующим образом:

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

Обратите внимание, что значение зажимается в диапазоне [0...1] перед умножением на 255.

Требования

Требование Значение
Минимальная версия клиента Windows 8 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2012 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header d3d11.h

См. также раздел

ID3D11VideoContext