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


Использование базовых классов DirectShow

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

Чтобы использовать базовые классы в DirectShow, необходимо создать и связать библиотеку базовых классов.

Библиотека базовых классов предоставляется в виде примера пакета SDK в пакете microsoft Windows Software Development Kit (SDK) (https://go.microsoft.com/fwlink/p/?linkid=62332). Точное расположение зависит от версии установленного пакета SDK, но относительный путь:

(Корневой каталог примеров sdk)\DirectShow\BaseClasses

Заголовок: Streams.h

Библиотека. В примере создаются розничные и отладочные версии библиотеки:

  • Розничная версия: Strmbase.lib
  • Версия отладки: Strmbasd.lib.

Дополнительные сведения о настройке среды сборки см. в разделе Настройка среды сборки.

Символы препроцессора

При включении файла заголовка Streams.h особое значение имеют следующие символы препроцессора:

  • PERF: зарезервировано. Не используйте этот символ препроцессора.
  • VFWROBUST: включает проверку указателя в розничной торговле. Дополнительные сведения см. в разделе Макросы проверки указателей. В отладочных сборках необязательно определять VFWROBUST.

Примечание

В Windows Vista и более поздних версиях макросы проверки указателя пусты.