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

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

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

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

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

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