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


Метод IVMRDeinterlaceControl::SetDeinterlaceMode (strmif.h)

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

Метод SetDeinterlaceMode задает режим деинтерлейсинга для указанного видеопотока.

Синтаксис

HRESULT SetDeinterlaceMode(
  [in] DWORD  dwStreamID,
  [in] LPGUID lpDeinterlaceMode
);

Параметры

[in] dwStreamID

Индекс видеопотока для задания. Чтобы задать все потоки, используйте значение 0xFFFFFFFF.

[in] lpDeinterlaceMode

Указатель на GUID, указывающий режим деинтерлейсинга. Чтобы отключить деинтерлейсинг, используйте значение GUID_NULL.

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

Возвращает значение HRESULT . Возможные значения:

Код возврата Описание
E_INVALIDARG
Недопустимый номер потока.
E_POINTER
Аргумент указателя NULL.
S_OK
Успешно.
VFW_E_VMR_NOT_IN_MIXER_MODE
VMR не находится в режиме микшера.

Комментарии

Если приложение не указывает режим, vmr по умолчанию использует первый режим, указанный драйвером. В любом случае, если VMR не может использовать предпочтительный режим, он возвращается в другой режим, указанный в методе IVMRDeinterlaceControl::SetDeinterlacePrefs .

Метод SetDeinterlaceMode действует только для новых подключений, установленных к VMR. Для некоторых режимов деинтерлейсинга требуются дополнительные эталонные примеры; точное число зависит от режима. VMR выделяет поверхности для этих дополнительных примеров. Клиент должен установить режим деинтерлейсации до выделения поверхностей. Выделение поверхности происходит после любого из следующих действий:

  • Закрепление подключений, включая динамические повторные подключения
  • Динамические изменения формата (фильтр вышестоящий вызывает IPin::ReceiveConnection для указания нового формата).
  • Изменения в разрешении
  • Мониторинг изменений

Требования

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

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

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

Интерфейс IVMRDeinterlaceControl

IVMRDeinterlaceControl::GetDeinterlaceMode

Использование отрисовщика смешанного видео