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


Метод IOverlay::SetColorKey (strmif.h)

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]

Метод SetColorKey изменяет цветовую клавишу.

Синтаксис

HRESULT SetColorKey(
  [in, out] COLORKEY *pColorKey
);

Параметры

[in, out] pColorKey

Указатель на значение ключа цвета, которое необходимо задать. В случае успешного выполнения фактическое выбранное значение ключа цвета копируется в этот параметр.

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

Возвращает S_OK в случае успешного выполнения, E_POINTER, если pColorKey имеет значение NULL, или E_INVALIDARG, если значение pColorKey недопустимо для текущей палитры или формата пикселей.

Комментарии

При изменении ключа цвета с помощью SetColorKey метода все ссылки на советы получат метод обратного вызова IOverlayNotify::OnColorKeyChange с новым цветом.

При использовании IOverlay::Совет на палеттизированном дисплее фильтр может установить цветной ключ (с помощью SetColorKey) или палитру (с помощью IOverlay::SetPalette), но не одновременно. Это связано с тем, что цветовые клавиши в этом режиме требуют реализации палитры, которая будет конфликтовать с SetPalette. Цветовые ключи можно удалить, запросив цветной ключ с флагом CK_NOCOLORKEY. Аналогичным образом любую палитру, установленную с помощью SetPalette , можно удалить, вызвав Метод SetPalette и передав параметры NULL (т. е. SetPalette(0;NULL)).

Попытка задать палитру при установке цветового ключа возвращает ошибку VFW_E_PALETTE_SET. При попытке задать цветовой ключ при установке палитры возвращается VFW_E_COLOR_KEY_SET.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header strmif.h (включая Dshow.h)
Библиотека Strmiids.lib

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

Коды ошибок и успешного выполнения

Интерфейс IOverlay