Обязательные интерфейсы (пакет SDK Медиаплеер Windows)

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

Медиаплеер Windows отрисовывает звук и видео с помощью одного из следующих конвейеров.

  • Directshow
  • Media Foundation

В Microsoft Windows XP и более ранних версиях проигрыватель использует DirectShow. В Windows Vista проигрыватель иногда использует DirectShow и Media Foundation.

Подключаемый модуль DSP реализует некоторые или все из следующих интерфейсов:

  • IMediaObject
  • IWMPPluginEnable
  • IMFTransform
  • IMFGetService
  • ISpecifyPropertyPages

Подключаемый модуль, реализующий IMediaObject и IWMPPluginEnable , может выполняться в конвейере DirectShow. Он также может выполняться в конвейере Media Foundation в оболочке, предоставляемой Media Foundation. Подключаемый модуль этого типа называется объектом мультимедиа Microsoft DirectX (DMO). Обычно DMO считается аналогом объекта фильтра в DirectShow. Документация по DMO находится в разделе DirectShow пакета Windows SDK.

Подключаемый модуль, реализующий IMFTransform и IMFGetService , может выполняться изначально (без оболочки) в конвейере Media Foundation. Подключаемый модуль этого типа называется Преобразованием Media Foundation (MFT). Документация по MFT находится в разделе Media Foundation пакета Windows SDK.

Подключаемый модуль, реализующий IMediaObject, IWMPPluginEnable, IMFTransform и IMFGetService , может выполняться в конвейере DirectShow, а также запускаться в конвейере Media Foundation. Этот тип подключаемого модуля, который называется подключаемым модулем DSP с двумя режимами, может играть роль DMO или MFT.

Когда Медиаплеер Windows использует подключаемый модуль DSP с двумя режимами в конвейере Media Foundation, он сначала запрашивает интерфейс IMFTransform. Если этот запрос завершается сбоем, Медиаплеер Windows запросы для интерфейса IMediaObject. Если запрос IMediaObject выполнен успешно, подключаемый модуль упаковывается и добавляется в конвейер Media Foundation.

Независимо от конвейера, любой подключаемый модуль DSP, позволяющий пользователю задавать свойства, должен реализовывать ISpecifyPropertyPages.

Общие сведения о подключаемом модуле DSP для разработчиков

Интерфейсы подключаемых модулей DSP

Упаковка подключаемого модуля DSP