Написание пользовательского MFT

В этом разделе описывается создание пользовательского преобразования Media Foundation (MFT).

Контрольный список MFT

При реализации настраиваемого MFT используйте следующий контрольный список, чтобы определить требования:

MFT Требования
Все MFT Все MFT должны реализовывать IMFTransform.
Дополнительные сведения о реализации этого интерфейса приведены в следующих разделах:
Кодировщики и декодеры Требования: см. раздел Реализация кодека MFT.
Рекомендуется: внедрить IMFQualityAdvise или IMFQualityAdvise2 для поддержки уведомлений о качестве обслуживания (QoS).
Декодеры и видеопроцессоры Необязательно: поддержка ускорения видео DirectX.
Аппаратные кодеки См. раздел Аппаратные MFT.
Чтобы сделать MFT обнаруживаемым с помощью приложений... См. раздел Регистрация и перечисление MFT.
Асинхронная обработка данных Модель MFT по умолчанию использует синхронные (блокирующие) вызовы для обработки данных. Для некоторых MFT асинхронная обработка может быть более эффективной. Однако его реализация также сложнее.
Дополнительные сведения см. в разделе Асинхронные MFT.
Управление скоростью, режим трюка или обратное воспроизведение См . раздел Реализация управления скоростью.
Если MFT создает потоки... Реализация интерфейса IMFRealTimeClient .
Если у вашего MFT есть ограничения лицензирования... Рассмотрите возможность использования механизма в области использования. См. раздел Ограничения области использования.
Если вы переносите существующий объект мультимедиа DirectX (DMO)... См. статью Сравнение MFT и dmos.

В этом разделе рассматриваются следующие вопросы.